1).掌握访问控制符
2).掌握类的访问控制符-补充
3).掌握非访问控制符
4).掌握final和finalize的区别-补充
5).掌握对象的上转型对象-补充
6).整理Eclipse中常用的快捷键-补充
1、访问控制符
同一类中 同一包中的其他类 不同包中的子类 不同包中的非子类
private yes
默认 yes yes
protected yes yes yes
public yes yes yes yes
2、类的访问控制符-补充
public:则该类可以被其他类所访问
或者 默认:只能被同包中的类所访问
3、非访问控制符
static 静态方法可以被继承,不能被重写,可以重载
final: * final可以定义常量
* final 可以修饰方法,修饰的方法不能被重写
* final可以修饰类,修饰的类不能被继承
static
1)static变量
2)static 方法
3)static静态区块
final:
(1)一个final变量实质上是一个 常量,例如:final int number=3;
(2) final方法表明子类不能被 重写 此方法
(3)声明为final的类不能 被子类继承
4、final和finalize的区别?
(1) final 是一个关键字 用于声明属性,方法和类,分别表示属性不
可变,方法 不可覆盖(重写),类 不能被继承。
(2) finalize()是Object类的一个方法,在垃圾收集器
执行的时候会调用此方法,回收在 栈 上分配的内存。
5、finalize()和gc()的区别?
(1). finalize()清除 栈 上分配的内存,
而gc()则清除在 堆 上分配的内存。
(2).finalize()是 Object 类中的方法,
而gc()则是 System 类中的方法。
6、对象的上转型对象-补充
定义: 通俗的说就是子类转型成父类
父类引用 指向 子类对象
2).上转型对象的特点(重要)
(1)上转型对象不能操作子类 新增 的成员变量(失掉了这部分属性);
不能调用子类 新增 的方法(失掉了一些功能)。
(2)上转型对象可以访问子类 继承 或 重写 的成员变量,也可以调用
子类中 基类被覆盖 的方法或子类 重写 的实例方法。
如果子类重写了父类的某个实例方法后,当对象的上转型对象
调用这个实例方法时一定是调用了子类 重写 的实例方法。
(3)父类类型的引用可以调用父类中定义的所有变量和方法,而对于子类中定义而超累中没有定义的方法就不可以引用,只能调用子类中对父类方法的重写
注意:子类隐藏的成员变量可以被访问到,但是得到此成员变量的值
为 父类 成员变量的值(即子类中隐藏的成员变量的值)。
下转型:
/**
* 下转型 子类的引用 = (子类名)父类的引用 大转小
* 只要做下转型,都要做if判断,判断f1是否为 Daugther对象
* 下转型对象可以调用新增的属性
*/
2).掌握类的访问控制符-补充
3).掌握非访问控制符
4).掌握final和finalize的区别-补充
5).掌握对象的上转型对象-补充
6).整理Eclipse中常用的快捷键-补充
1、访问控制符
同一类中 同一包中的其他类 不同包中的子类 不同包中的非子类
private yes
默认 yes yes
protected yes yes yes
public yes yes yes yes
2、类的访问控制符-补充
public:则该类可以被其他类所访问
或者 默认:只能被同包中的类所访问
3、非访问控制符
static 静态方法可以被继承,不能被重写,可以重载
final: * final可以定义常量
* final 可以修饰方法,修饰的方法不能被重写
* final可以修饰类,修饰的类不能被继承
static
1)static变量
2)static 方法
3)static静态区块
final:
(1)一个final变量实质上是一个 常量,例如:final int number=3;
(2) final方法表明子类不能被 重写 此方法
(3)声明为final的类不能 被子类继承
4、final和finalize的区别?
(1) final 是一个关键字 用于声明属性,方法和类,分别表示属性不
可变,方法 不可覆盖(重写),类 不能被继承。
(2) finalize()是Object类的一个方法,在垃圾收集器
执行的时候会调用此方法,回收在 栈 上分配的内存。
5、finalize()和gc()的区别?
(1). finalize()清除 栈 上分配的内存,
而gc()则清除在 堆 上分配的内存。
(2).finalize()是 Object 类中的方法,
而gc()则是 System 类中的方法。
6、对象的上转型对象-补充
定义: 通俗的说就是子类转型成父类
父类引用 指向 子类对象
2).上转型对象的特点(重要)
(1)上转型对象不能操作子类 新增 的成员变量(失掉了这部分属性);
不能调用子类 新增 的方法(失掉了一些功能)。
(2)上转型对象可以访问子类 继承 或 重写 的成员变量,也可以调用
子类中 基类被覆盖 的方法或子类 重写 的实例方法。
如果子类重写了父类的某个实例方法后,当对象的上转型对象
调用这个实例方法时一定是调用了子类 重写 的实例方法。
(3)父类类型的引用可以调用父类中定义的所有变量和方法,而对于子类中定义而超累中没有定义的方法就不可以引用,只能调用子类中对父类方法的重写
注意:子类隐藏的成员变量可以被访问到,但是得到此成员变量的值
为 父类 成员变量的值(即子类中隐藏的成员变量的值)。
下转型:
/**
* 下转型 子类的引用 = (子类名)父类的引用 大转小
* 只要做下转型,都要做if判断,判断f1是否为 Daugther对象
* 下转型对象可以调用新增的属性
*/