一、补充
1.OO:面向对象
OOA:面向对象分析
OOD:面向对象设计
OOP:面向对象编程
2.高质量代码的要求:复用性,扩展性,维护性,移植性,可读性,健壮性,效率
3.面向过程:以方法为单位来解决问题,比较适合简单的业务(大象装冰箱,去银行取钱)
面向对象:以对象为单位来解决问题,比较适合复杂的业务
二、面向对象
1.类和对象
类:类是对象的抽象化,对象是类的具体化
对象:现实生活中真实存在的单个个体(软件)
2.类和对象的创建以及访问:
类的创建:class类名{ 类体(1.对象的属性/特征/数据,设计为成员变量 2.对象的行为/动作/功能,设计为方法) }
对象的创建:new关键字(实例化)
3.this关键字(只能用在方法中,访问成员变量)
指代当前对象,那个对象调用方法,他指的就是哪个对象
三、构造方法(alt+insert)
1.作用:给成员变量赋初始值
2.语法:必须与类同名,没有返回值类型(连void都没有)
3.调用:在创建(new)对象时被自动调用
4.特点:自己不构造方法,编译器默认提供一个无参构造方法(构造方法可以重载)
5.规定:成员变量可以与局部变量同名,访问时默认采取的是就近原则,this不可省略
四、内存管理(由JVM来管理)
1.堆:new出来的对象(包括成员变量、数组元素、方法的地址)
2.栈:局部变量(包括方法的参数)
3.方法区:.class字节码文件(包括所有的方法、静态变量)