抽象类和接口

抽象类

1、抽象类不能被实例化,实例化的工作应该交由它的子类来完成,它只需要有一个引用即可。

2、抽象方法必须由子类来进行重写。

3、只要包含一个抽象方法的抽象类,该方法必须要定义成抽象类,不管是否还包含有其他方法。

4、抽象类中可以包含具体的方法,当然也可以不包含抽象方法。

5、子类中的抽象方法不能与父类的抽象方法同名。

6、abstract不能与final并列修饰同一个类。

7、abstract 不能与private、static、final或native并列修饰同一个方法。

接口

1、Interface的所有方法访问权限自动被声明为public。确切的说只能为public,当然你可以显示的声明为protected、private,但是编译会出错!

2、接口中可以定义“成员变量”,或者说是不可变的常量,因为接口中的“成员变量”会自动变为为public static final。可以通过类命名直接访问:ImplementClass.name。

3、接口中不存在实现的方法。

4、实现接口的非抽象类必须要实现该接口的所有方法。抽象类可以不用实现。

5、不能使用new操作符实例化一个接口,但可以声明一个接口变量,该变量必须引用(refer to)一个实现该接口的类的对象。可以使用 instanceof 检查一个对象是否实现了某个特定的接口。例如:if(anObject instanceof Comparable){}。

6、在实现多接口的时候一定要避免方法名的重复。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 先来看看抽象类和接口的定义: 抽象类(abstract class): 使用abstract修饰符修饰的类。官方点...
    IT废柴阅读 53,950评论 7 45
  • Java中,有两种实现OOP(Object Oriented Programming)编程的方法:抽象,接口。 f...
    Arya鑫阅读 507评论 0 1
  • 1)抽象类与接口的问题,面了好几个公司,都会被问到,其实这也是开发过程中经常遇到的问题,在这里所说的接口是指jdk...
    Hughman阅读 1,264评论 0 2
  • 17年6月8日 开始爬山锻炼已经有半年多时间了,身体的变化带给我欣喜,不再容易疲劳,高血压虽然仍在吃降压药,却也不...
    八道I江山阅读 1,816评论 3 3
  • 我们都喜欢安逸的生活,安逸可以使自己心里上过的舒服,轻松,但安逸也同时伴随着危机的到来。看过一篇文章,里面有句话说...
    天涯落花零阅读 331评论 0 0