博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
9、接口和抽象类
阅读量:4315 次
发布时间:2019-06-06

本文共 843 字,大约阅读时间需要 2 分钟。

抽象类

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、在实现多接口的时候一定要避免方法名的重复。

 

接口和抽象类的区别

 

1、 接口只能包含抽象方法,抽象类可以包含普通方法。 

2 、接口只能定义静态常量属性,抽象类既可以定义普通属性,也可以定义静态常量属性。 
3 、接口不包含构造方法,抽象类里可以包含构造方法。
4 、抽象类不能被实例化,但不代表它不可以有构造函数,抽象类可以有构造函数,备继承类扩充

 

转载于:https://www.cnblogs.com/caoyc/p/4365680.html

你可能感兴趣的文章
[原]unity5 AssetBundle 加载
查看>>
[Day15]常用API(Object类、String类)
查看>>
[置顶] 各种流行的编程风格
查看>>
codeforces1029 E.Tree with Small Distances
查看>>
JavaScript——JS上下文中的this值笔记
查看>>
Bootstrap简单使用
查看>>
导航控制器的出栈
查看>>
玩转CSS3,嗨翻WEB前端,CSS3伪类元素详解/深入浅出[原创][5+3时代]
查看>>
iOS 9音频应用播放音频之播放控制暂停停止前进后退的设置
查看>>
Delphi消息小记
查看>>
HNOI2016
查看>>
BZOJ2648: SJY摆棋子&&2716: [Violet 3]天使玩偶
查看>>
JVM介绍
查看>>
结构体,联合体,内存分配
查看>>
JVM垃圾收集器介绍
查看>>
[No0000136]6个重要的.NET概念:栈,堆,值类型,引用类型,装箱,拆箱
查看>>
【转】MapReduce源码分析总结
查看>>
原生JDK网络编程- NIO之Reactor模式
查看>>
table01
查看>>
简洁侧边wordpress博客模板
查看>>