目录
1:面向过程与面向对象
面向过程:以整个功能的执行过程为基准, 思考过程中每一步的操作。
面向对象:基于面向过程,不仅要思考过程中的每一步,还需要思考每一步都应该是由谁(对象)来实现的
2.对象与类
对象:对象具有一定的特征和行为。 这里的特征和行为都是偏概念性的。 只有应用具体的对象时,这些概念才具体。
类:类是具有相同特征和行为的对象的抽象。 是一堆对象的抽象概念。
类与对象的关系:类是对象的抽象(概念,模板) 对象是类的具体实例。
类的定义:
-
类中包含特征和行为
-
编码时,定义方法来代表类的行为
-
编码时,定义变量来代表类的特征, 这个变量又称为属性。
-
所以,类中包含了属性和方法。
3.创建对象
①创建
-
当我们使用new关键字的时候, 表示创建了一个引用类型的数据
-
引用类型的数据比较复杂,不能像基本类型的数据一样,直接存储在变量中
-
需要先存储在堆区中,同时会被分配一个内存地址
-
接下来我们使用的都是这个内存地址。通过地址,间接的使用引用类型的数据。
-
-
说明对象也是一个引用类型的数据。
-
通过地址间接的操作对象(存,取,使用)
②使用
情况一:
-
对象本身,是一个引用类型的数据
-
所以他也可以像其他的所有数据一样,进行操作 如:存储,打印等。
情况二:
-
对象包含属性和方法
-
所以使用对象,其实就是使用对象中的属性和方法 。 类似于数组
4.面向对象的一些应用特点
对象成员
-
对象包含属性和方法。
-
我们称这个属性和方法都是对象的成员
-
各自称为:成员属性 (成员变量,对象属性), 成员方法(对象方法)
-
在成员方法中,可以使用自己的成员变量
成员变量与局部变量
-
成员变量就是类对象中的变量,对于类对象中的所有方法是共享的。
-
局部变量一般就是方法中的变量 。 (花括号中的变量)
5.构造方法
-
类对象中可以包含属性和方法
-
方法包含一个特殊的情况,就是构造方法
-
构造方法又称为构造器
-
构造方法特点
-
构造方法名称必须与类名相同
-
构造方法没有返回类型
-
目前,构造方法只能在new创建对象时被调用
-
不能修饰符 static , final ,abstract
-
-
其余与普通方法相同
-
异常声明
-
访问权限
-
参数列表
-
方法重载
-
构造方法的作用是什么?
-
创建对象的同时,为对象的属性初始化赋值
-
或者创建对象的同时,执行一些初始化操作
6.对象创建的过程
引入构造方法后,对象创建的过程是什么样的
-
jvm会根据new关键, 开辟对象的存储空间, 也就是创建了一个对象
只不过空间中要放什么内容,还不知道。需要类模板
-
根据构造方法,找到类模板 。因为构造方法的名字与类名相同
一旦找到类模板,就会按照类模板中声明的信息 产生变量和方法
同时这个属性变量会有默认值
-
接下来会调用构造方法,为属性变量初始化赋值
7.this关键字
第一个作用,用来调用重载的构造方法
第二个作用,this关键字表示方法中的一个默认参数,存储当前对象的地址
对象外部,主方法可以根据变量中存储的这个对象地址,调用对象的属性和方法
对象内部的方法中,可以根据this变量中存储的自己这个对象的地址,调用自己这个对象的属性和方法
对象内部的方法中,调用对象内部的其他方法和属性时,可以不使用this。默认调用的就是自己的东西
(this存储对象地址的意义)
1.当方法中的局部变量与成员变量同名时,可以使用this来区分哪一个是成员变量
2.在jvm运行的过程中,对象内部的方法执行时,都会自动的使用this