Java学习笔记(八)
1、什么是多态?
多态就是指同一方法因为调用对象的不同而表现的结果不同。多态跟属性无关,只跟方法有关。
使用多态是为了提高代码的扩展性。他有三个要素:继承、重写、父类引用指向子类对象。
2、什么是接口?
接口(Interface)是一种抽象类型,它定义了一组方法的声明,但没有实现这些方法的具体实现。接口定义了一个类应该具有的方法,但是并不提供这些方法的实现。类可以实现一个或多个接口,并实现接口中定义的方法。
接口的特点:(1)接口中只定义了方法的声明,没有方法体,也没有成员变量。
(2)接口中的方法默认是public和abstract的,可以省略这些修饰符。
(3)类可以实现一个或多个接口,并实现接口中定义的方法。类要实现接口中的所有方法。接口可以继承其他接口,可以多重继承。
(4)接口不能被实例化,但是可以定义接口变量来引用实现了该接口的对象。
3、引用数据类型的理解?
- 除了基本数据类型之外 ,凡是能合法存在数据类型位置的,都是引用数据类型。
- 可以让参数类型的选择更灵活:多态
4、请谈谈你对参数传递过程的理解
(1)基本数据类型传递
a. 当是基本数据类型时,在内存中存放的是真正的值
b. 当是基本数据类型作为参数进行传递时,实参传递给形参的是真正的值,也就是:相当于复制一份。
c. 当另一个方法中局部变量的值发生改变,不会对原来方法中局部变量的值更改,因为它们都是独立的,没有影响。
(2)引用数据类型传递
a. 当是引用数据类型时间在内存中存放的是地址
b. 当引用数据类型作为参数进行传递时,实参传递给形参的是地址,也就是:实参与形参存放同一个地址,指向同一个对象,也就是说:当另一个方法中对象
的属性值发生改变,对原来方法中对象的属性值有影响
5、对变量划分的理解

6、什么时候需要进行向下转型
当构成多态时,如果访问子类中独有的属性或者独有的方法,则就必须进行向下转型,也叫做强制类型转换。
7、多态的注意事项
只有方法才会具备多态,而成员属性不具备多态。