目录
final关键字
final 关键字是最终的意思,可以修饰类,成员变量,成员方法
修饰类,类不能被继承
修饰变量,变量就变成了常量,只能被赋值一次
修饰方法,方法不能被重写
面试题
final修饰局部变量
在方法内部,该变量不可以被改变
在方法声明上:
基本类型,是值不能被改变
引用类型,是地址值不能被改变,内容可以改变、
final修饰变量的初始化时机
在对象构造完毕前即可
多态的概述
某一个事物,在不同时刻表现出来的不同状态
动物 d = new 猫();
多态的前提和体现
有继承关系
有方法重写
有父类引用指向子类对象
成员访问的特点
成员变量:编译看左边,运行看左边
成员方法:编译看左边,运行看右边
静态方法:编译看左边,运行看左边(静态方法不能算方法的重写)
多态的好处和弊端
好处:
提高了程序的维护性(由继承保证)
提高了程序的扩展性(由多态保证)
弊端:
不能访问子类特有的功能(如何才能访问子类的特有功能呢?)
多态的转型
向上转型
从子到父
父类引用指向子类对象
向下转型
从父到子
父类引用转为子类对象
多态成员访问及转型的理解(孔子装爹)
多态中看方法实现
编译看左边,没有延续父类
执行看右边,没有延续父类,调用方法看有没有被重写,重写调用子类