abstract class和interface
来源:互联网 发布:abp源码 编辑:程序博客网 时间:2024/05/21 17:54
抽象类概念
抽象就是找出一些事物的相似和共性之处,然后将这些事物归为一个类,这个类只考虑这些事物的相似和共性之处
抽象类的特点
包含抽象方法的类一定是抽象类.
抽象方法和抽象类都用关键字abstract修饰
构造方法,static方法都不能定义为抽象方法。
抽象方法不能使用private访问控制符修饰。
抽象方法只需要声明,不需要实现。
抽象类中可以定义构造方法,但是抽象类不能创建对象。
子类继承抽象类时,需要重写抽象类中所有的抽象方法,除非子类也是抽象类。
语法:
[访问控制符] abstract class类名{
0—n个属性;
[修饰符]返回值类型 方法名([参数列表]){
方法体;
[return 返回值;]
}
[修饰符] abstract返回值类型 方法名([参数列表]);
}
接口的概念
抽象类是从多个类中抽象出来的模板,如果将这种模板进行的更彻底,则可以提出一种更加特殊的“抽象类”-----接口(interface).接口中没有普通方法,接口中所有方法都是抽象方法。
接口的特点
一个类只能继承一个直接的父类,但是一个类可以实现多个接口
接口中不能定义构造方法,接口不能实例化。
接口中方法全部都是抽象方法,接口中属性全部都是全局常量
当一个类实现(继承)某个接口时,他必须实现接口中所有的方法,除非这个类定义为抽象类
语法:
[修饰符] interface接口名{
全局常量;
抽象方法;
}
abstract class(抽象类)和interface(接口)的区别
抽象类可以有构造方法,接口中没有
抽象类中可以有普通成员变量,接口中没有
抽象类中可以包含非抽象的普通方法,接口中的所有方法必须都是抽象的
抽象类中的抽象方法的访问类型可以是public,protected和默认缺省,但接口中的抽象方法只能是public类型的
抽象类中可以包含静态方法,接口中不能包含静态方法
抽象类中的静态成员变量的访问类型可以任意,但接口中定义的变量只能是public static final类型
- abstract class和interface
- abstract class和interface
- abstract class和interface
- abstract class和interface
- abstract class和interface
- abstract class和interface
- abstract class和interface
- abstract class和interface
- abstract class和interface
- abstract class 和interface
- abstract class和interface
- abstract class和interface
- abstract class 和 interface
- abstract class和interface
- abstract class和 interface
- abstract class和interface
- abstract class 和 interface
- abstract class和interface
- MVVM模式
- 向量内积–笔记2017年10月3日
- 链表相关面试题
- 如何将PHP作为Shell脚本语言使用
- 关于DL中的过拟合中的dropout
- abstract class和interface
- 卡特兰数
- leetcode.array--4. Median of Two Sorted Arrays
- stdlib.h和stdio.h的区别
- CSS Mastery摘要(2)--Visual Formatting Model Overview
- Android移动开发-使用OpenGL来绘制3D纹理图的实现
- LeetCode-86-Partition List 链表
- h5编辑API之Range对象
- 智能小车34:汇编与C语言一起玩