面向对象
1.对象的理解,分析特征 行为 简单理解为把任务派给某个对象来处理
2.过程和对象的区别,过程更加复杂
封装,继承,多态。三大特性
类和对象
对象:堆的存储区域
类:相同特征和行为的对象共性的抽象描述
特征=成员变量,属性=成员方法
类(设计图纸) 对象:根据设计图纸 数据结构由定义他的类决定
类的定义
成员变量 变量名 = 初始值;
成员方法
创建对象
new 类名(); 实例化 new Person();堆区 存放对象的独有特征信息 匿名对象
引用 堆区中的内存地址信息
Public class Person{
//成员变量
String name;
Int age;
}
main方法
成员实例化 new Person();
成员方法的定义
返回值类型,方法名,方法体
形参和实参的区别 可变长参数 可变长参数为什么不用数组或者集合???
参数传递中的注意事项
1.基本数据类型作为形参传递时,数值改变不会影响实参
2.引用数据类型作为参数传递时,数值改变会影响实参(引用数据类型里存放的是地址 地址传递)
3.引用数据类型,作为方法的参数进行传递时,如果new一个对象,就会在堆中新开辟一个空间,改变参数地址,这样就不会引起实参的变化
构造方法概念:方法名与类名相同 没有返回值类型
无参构造 有参构造
编译器会自动添加一个无参空构造方法
方法重载:方法名形同,参数列表不同 (个数不同,类型不同)
this关键字
在构造方法中,出现this,代表正在构造的对象
在成员方法中,出现this,谁调用我,我就代表谁 谁调用方法,this就代表谁
实际上代表当前所在类
避免成员变量名和形参变量名形同(开发中尽可能相同,提高代码可读性)。this.***
1.调用成员变量和成员方法
2.作为方法返回值
3.使用this()的方式调用本类中 的其他构造方法 第一行