目录
一、Java面对对象的三条主线
1.Java类及类成员
属性,方法,构造器;代码块、内部类
2.面对对象的三大特征
封装,继承,多态
3.其他的关键字
this、super、static、final、abstract、inference、package、import
二、面向对象及面向过程的解释
举例:人把大象装进冰箱
1.面向过程
强调的是功能行为,以函数为最小单位,考虑怎么做
①把冰箱门打开
②抬起大象,塞进冰箱
③关上冰箱门
2.面对对象
强调具备功能的对象,以类/对象为最小单位,考虑怎么做。
人{
打开(冰箱){
冰箱.开开();
}
抬起(大象){
大象.进入(冰箱);
}
关闭(冰箱){
冰箱.闭合();
}
}
冰箱{
开开(){}
闭合(){}
}
大象{
进入(冰箱){}
}
三、面对对象的两个要素
1.类
定义:对一类事物的描述,抽象的,概念上的定义
2.对象
定义:是实际上存在的该事物的每个个体。
面对对象程序设计的重点就是类的设计,设计类就是设计类的成员。
对于设计类就是设计类的成员:
属性 = 方法 = field = 域、字段
方法 = 成员变量 = 函数 = method
创建类的对象 = 类的实例化
四、类和对象的使用
1、创建类,设计类的成员
2、创建类的对象
3、通过“对象.属性”、“对象.方法”调用对象的结构
4、如果创建了一个类的多个对象,则每个对象都独立的拥有一套类的属性。(非static) 意味着:如果我们修改一个对象的属性A的值,则不影响类外一个对象的属性A
五、类中属性的使用
1.1定义变量的格式:数据类型 变量名 = 变量值
1.2先声明后使用
1.3变量都有其对应的作用域
2.不同点
2.1在类中声明的位置不同
属性:直接定义在类的一对{}内
局部变量:定义在方法内,方法形参、代码块内、构造器形参、构造器内部的变量。
2.2关于权限修饰符的不同
属性:可以在声明属性时,指明其权限,使用权限修饰符 常用的权限修饰符:private,public,缺省、protected
局部变量:不可以使用权限修饰符
2.3默认初始化值的情况
属性:类的属性,根据其数据类型,都有默认的初始化值
整形(byte,short,int,long):0
浮点型(float,double):0.0
字符型(char)0(或'\u0000')
布尔型(boolean)false
应用数据类型(类、接口、数组):null
局部变量:没有默认的初始化值 意味着,我们在调用方法时一定要对其赋上初始化值
特别的:形参在调用的时候赋上初始化值即可 2.4在内存中加载的位置也不同
属性:加载到堆空间
局部变量:加载到栈