从今天起,坚持写学习java的笔记,每天的学到的东西,和还不太清楚的东西做一个记录,看看自己能坚持多久。
今天的学习内容:接口和多态
接口的概念:是功能的集合,同样可以看作是一种引用类型,比抽象类更抽象的类。
接口的定义格式:
public interface 接口名{ public static final type name=value;//定义定值变量 public abstract 返回值 方法名(参数列表); } 接口中的方法均为公共访问的抽象方法;接口中变量的定义格式固定,并且必须赋值;接口仍在java文件中,编译生成.class文件。
- 类实现接口:类可以多实现接口,接口与接口可以多继承,多实现接口时,不应该存在两个抽象方法返回值不同,方法名相同,子类无法共同实现。
- 个人理解:接口就是一种功能的扩展,抽象的父类是主干,提供基本的功能及属性。
-多态:一个对象,多种形态。
一个对象是一个子类的对象;多种形态是子类对象由于继承或实现而能表现出父类或接口的形态;
面向父类操作子类:可以统一操作所有继承了同一父类或实现了同一接口的一群子类的对象
在父类或接口的范围内使用子类对象,只能使用继承或实现的成员;
编译时只看子类的父型;
运行时子类重写了父类或接口中的方法才执行子类的方法,否则方法属性均看上型;
多态的转型:一个对象,不改变对象,只改变形态
向上转型:限制对子类特有方法的访问
向下转型:为了使用子类特有的方法
好处:
可以对继承同一父类或实现同一接口的众多子类
面向父类或接口对这些子类进行共同的操作,
提升代码的复用性。