Java基础入门(八)之面向对象二
接口:
定义:是一种行为规范,是一种特殊的抽象类,所有的方法都是抽象的,所有的变量都是常量.
接口中的成员修饰符是固定的:
成员方法:都是静态的,共有的;
成员变量:都是常量,共有静态常量
接口的特点:
类与类之间的关系叫做继承,一个类只能有一个父类;
类与接口之间的关系叫做实现,一个类可以实现多个接口
类在继承一个类的同时,还可以实现多个接口,弥补了JAVA单继承的不足;
在JAVA 中,接口与接口之间也有关系,接口继承接口,一个接口可以同时继承多个接口
接口不能实例化对象,接口没有构造方法
抽象类与接口的区别:
抽象类用abstract 修饰,接口用interface 修饰
抽象类中可以包含非抽象方法,也可以包含抽象方法,接口中只有抽象方法
接口类和抽象类都不能被实例化,抽象类有构造方法,接口类没有
多态的前提:
类与类或者接口之间有关系
子类重写父类的方法
父类引用子类对象
多态的向上转型与向下转型:
向上转型:子类对象复制给父类引用;
向下转型:父类引用强制转化为子类类型
多态注意事项:成员方法调用的特点:编译看左边,运行看右边
成员变量的特点:编译看左边,运行看左边
多态的好处和弊端:
好处:提高代码的扩展性;
弊端:虽然提高程序的拓展性,但是父类不能直接访问子类的属性和方法,必须向下转型