20170702 面向对象知识点(上)
2017-07-03 本文已影响7人
houc
参考文献:《Java疯狂讲义》(第三版)
局部变量的初始化和内存的运行机制
知识点:
栈内存的变量无需系统垃圾回收,往往随方法或者内存块的运行结束而结束。
知识点:
成员变量作用域扩到到类存在范围或对象存在范围,这种范围的扩大有两个害处:
1、增大了变量的生存时间,这将导致更大的内存开销;
2、增大了变量的作用域,这不利于提高程序的内聚性;
考虑使用成员变量的情形:
1、如果需要定义的变量用于描述某个类或某个对象的固有信息;
2、如果在某个类中需要以一个变量来保存该类或者实例运行时的状态信息;
3、如果某个信息需要在某个类的多个方法之间进行共享;
知识点:
Java三大特征:继承、封装、多态
多态:
Java引用变量有两个类型:一个是编译时类型,一个是运行时类型。编译时类型由声明该变量的类型决定,运行时类型由实际赋给该变量的对象决定。如果编译时类型和运行时类型不一致,就可以出现所谓的多态。
类的第四种成员变量——初始化块
初始化块只在创建Java对象时隐式执行,而在执行构造器之前执行
静态初始化块
系统在类初始化阶段执行静态初始化块,而不是创建对象时才执行。因此静态初始化总是比普通初始化先执行。