接口
1。接口的特性
1接口 可以声明属性的类型,
2接口中的方法都是公共抽象方法。
3.接口中不能拥有构造方法,不能用于创建对象。
4接口可以多继承。
5一个类可以实现一个或多个接口,该类称为接口的实现类(implement class),实现类必须实现接口中的所有抽象方法。
6一个类只能继承一个父类,同时实现多个接口。集成在前,实现在后。
特殊情况:如果一个抽象父类定义了和接口同名的抽象方法,实现类实现的是抽象父类的抽象方法。
总结:实现类实现接口,必须实现接口中定义的抽象方法
方法即行为,表示一种功能。
接口定义了一套功能,实现类必须实现这些功能,实现类的能力得到了拓展。
2.接口的应用:接口定义的一些系列方法表示的是一种种能力。接口让实现类实现这些能力,实现类的能力里得到了拓展和升级。实现类根据自身特性实现接口中定义的方法,
3.接口中的多态。
接口实现多态:接口类型引用实现类对象。
继承实现多态:父类类型引用子类对象,
接口定义的方法被实现类实现,通过接口引用实现类时,调用接口的方法时,执行的是实现类实现的方法,
实现类对象具备接口中定义的能力是一种has a关系
子类对象是一种父类类型是一种is a方法
3.面向对象编程
实现类必须实现接口中的所有方法,所以接口规范了实现类的行为。
接口约定了实现类应该具备的行为。
所谓 面向接口编程,在程序设计时,只关心实现类 具备什么能力,而不关心实现类如何实现这个能力,面向接口编程时,面向接口的约定而不考虑接口的具体实现,也就是说,面向接口编程时,接口的定义方只关心实现类是否具备接口所定义的能力,而实现类如何背的该能力接口定义方一点都不关心。
4抽象类的接口的异同比较。
抽象类和接口都是引用数据类型,他们都不能创建对象,他们都可以定义抽象方法,都可以实现多态,但是抽象类可以定义非抽象方法,而接口中定义的都是抽象方法,抽象类和接口都具备传递性,抽象类是单根性,而接口是多继承,在概念上,都可以重写抽象方法,子类重写抽象类,实现类 实现接口,抽象类和子类解决的是模块内的问题重用,重写,多态,而接口解决的是模块间的问题:高内聚,低耦合,接口可以用解耦模块。
5object
object类是所有类的父类,如果一个类没有显示继承另外一个类,name该类一定继承与object,
tostring返回对象的字符串形式。
equals用于判断两个对象的属性是否相等,
6.内部类
在Java中,一个文件可以定义多个类,,这两个类属于平行关系,一个雷也可以定义在一个类的内部,定义在内部的类称为内部类,外面的就是外部类,内部类 根据具体的修饰符和具体位置分为很多情况。