面向对象

面向对象思想

  • 面向对象是相对面向过程而言
  • 面向对象和面向过程都是一种思想
  • 面向过程:强调的是功能行为
  • 面向对象:将功能封装进对象,强调具备了功能的对象
  • 面向对象是基于面向过程的

面向对象举例

举例1(冰箱)

  • 面向过程:打开冰箱,存储冰箱,关闭冰箱
  • 面向对象:冰箱(打开,存储,关闭)

举例2(窗口)

  • 面向过程:移动窗口,最小化窗口,最大化窗口
  • 面向对象:窗口(移动,最小化,最大化)

类与对象

概念

  • :将具有==相同属性和相同行为的一组对象==称为类。即用于描述一组对象的共同特征和行为。
    注:类是一个抽象的概念,要利用类的方式解决问题,必须用类创建一个实例化的类对象,然后通过类对象去访问类的成员变量,去调用类的成员方法类实现程序的功能

  • 对象:一个对象由==一组属性和一组对属性进行操作的方法==构成

对象的特征

  • 静态特征:指对象的外观、性质、属性等。人们将对象的静态特征抽象为属性,用数据来描述,java中称之为==变量==。

  • 动态特征:指对象具有的功能、行为等。人们将对象的动态特征抽象为行为,用一组代码来表示,完成数据的操作,java中称之为==方法==。

变量(属性)
成员变量:定义在类中的变量称为成员变量。在类方法外。
局部变量:定义在方法中的变量称为局部变量。在方法中定义或方法声明上

方法(函数)
成员方法:
构造方法:

对象的创建及内存图

创建对象:Persion p=new Persion();

  • new Persion()用于创建Persion类的一个实例对象
  • Persion p 则是声明了一个Persion类类的变量p
  • = 号用于将Persion对象在内存中的地址赋值给变量p,这样变量p便有了对象的引用。【即把引用值存储在变量s中】

匿名对象

定义:没有名字的对象,匿名对象调用完就是垃圾
例如;
new car().num = 5; //这就是匿名对象

匿名对象调用方法比较有意义,调用属性没有意义

  • 使用方式1:当对对象的方法只调用一次时,可使用匿名对象来完成,这样比较简化。如果对一个对象进行多个成员调用时,必须给这个对象起个名字

  • 使用方式2:可以将匿名对象作为实际参数进行传递

java基础(2)-面向对象(1)的更多相关文章

  1. Java基础-初识面向对象编程(Object-Oriented-Programming)

    Java基础-初识面向对象编程(Object-Oriented-Programming) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. Java是一门面向对象的程序设计语言.那么什 ...

  2. 黑马程序员——【Java基础】——面向对象(二)异常机制、包(Package)

    ---------- android培训.java培训.期待与您交流! ---------- 一.异常机制 (一)异常概述 1.异常:就是程序在运行时出现不正常情况. 2.异常类:程序在运行时,出现的 ...

  3. Java基础之面向对象以及其他概念

    一.基础知识:1.JVM.JRE和JDK的区别: JVM(Java Virtual Machine):java虚拟机,用于保证java的跨平台的特性. java语言是跨平台,jvm不是跨平台的. JR ...

  4. 【Java基础】面向对象下

    面向对象下 这一章主要涉及其他关键字,包括 this.super.static.final.abstract.interface.package.import 等. static 在 Java 类中, ...

  5. 【java基础】面向对象的三大基本特征之-------继承

    面向对象的三大特征:封装,继承,多态 java通过extends关键字来实现继承,而且是单继承,一个子类只可以有一个直接父类,但是父类还可以有父类... java.long.Object是所有类的父类 ...

  6. 黑马程序员——【Java基础】——面向对象(一)概述、类与对象、继承、抽象类、接口、多态、内部类

    ---------- android培训.java培训.期待与您交流! ---------- 一.面向对象概述 1.面向对象:是一个很抽象的概念,它相对面向过程而言,是一种程序设计的思想. 2.面向对 ...

  7. 再探java基础——对面向对象的理解(1)

    对象 对象是人们要进行研究的任何事物,从最简单的整数到复杂的飞机等均可看作对象,它不仅能表示具体的事物,还能表示抽象的规则.计划或事件.对象具有属性和行为,在程序设计中对象实现了数据和操作的结合,使数 ...

  8. Java基础(6)- 面向对象解析

    java面向对象 对象 知识点 java 的方法参数是按值调用,是参数的一份拷贝 封装 使用private将 属性值/方法 隐藏,外部只能调用 get,set方法/非private 的接口 获取 重载 ...

  9. Java基础总结--面向对象1

    ---面向对象的概念---1.面向过程与面向对象的区别面向过程:是一种思维习惯,解决一个问题的时候靠的是一个个方法调用--核心是动作面向对象:是一种更接近生活中解决问题的思维习惯,解决特定的问题靠对象 ...

  10. Java基础知识➣面向对象(八)

    概述 Java和C#都是面向对象语言,面向对象编程是目前高级语言习惯的编程模式,与C++编写过程编程而言,面向对象使用起来高效.灵活:面向对象的三个特征:封装.继承和多态. Java面向对象 1.类封 ...

随机推荐

  1. dos下查找进程,如果找到echo find并结束该进程

    @echo offset var=chromedriver.exetasklist | findstr "%var%" && echo findtaskkill / ...

  2. cocos2d-x中关于touch事件的响应

    原作者:有缘人  来源:新浪微博 地址:http://blog.sina.com.cn/s/blog_6ac2c7260102vvdu.html 一.touch事件响应分为单点触摸响应和多点触摸响应. ...

  3. UESTC 491 Tricks in Bits

    Tricks in Bits Time Limit: 1000MS   Memory Limit: 65535KB   64bit IO Format: %lld & %llu Submit  ...

  4. MySql 批处理

    1. 批处理 批处理只针对更新(增,删,改)语句. MySql 的批处理默认是关闭的, 需要在 url 中配置参数: jdbc:mysal://localhost:3306/mydb1?rewrite ...

  5. Windows Server 2012 下安装MySQL 5.6 X64位包

    WIN下的MySQL 5.6非MSI安装 查阅了官网一下,比较靠前的版本,都很少提供MSI 64位的版本,只有32位的版本,但是服务器上跑的自然是64位的系统为佳,在官网下了免编译的WIN 环境包,过 ...

  6. windows 和rhel,centos双系统安装

    1:首先确保你先安装为windows系统,为indows7以上的把. 2:安装好为indows系统后,进入系统后把磁盘分区,分出足够的空间为安装linux. 3:再为windows下使用软碟通等工具制 ...

  7. pandas(零)数据结构

    pandas的两个主要的数据结构: Series series是一种类似于一维数组的对象,它由一组数据(NumPy数组类型的数据)和一组与之相关的数据标签(索引)组成. from pandas imp ...

  8. JAVA项目中常用的异常知识点总结

    JAVA项目中常用的异常知识点总结 1. java.lang.nullpointerexception这个异常大家肯定都经常遇到,异常的解释是"程序遇上了空指针",简单地说就是调用 ...

  9. npm-folders

    npm-folders Executable(可执行程序) 在全局模式下,可执行程序被链接到Unix的{prefix}/bin目录下,或者是Windows的{prefix}目录下. 在本地模式下,可执 ...

  10. Python之模块和包(Day21)

    一.Python模块 Python模块(module),是一个Python文件,以.py结尾,包含了Python对象定义和Python语句. 模块让你能够有逻辑的组织你的Python代码段 把相关的代 ...