java继承、抽象、接口介绍及区别
来源:互联网 发布:关闭手机数据连接 编辑:程序博客网 时间:2024/05/15 08:31
继承
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
继承的特性
1. 子类拥有父类非private的属性,方法。
2. 子类可以拥有自己的属性和方法,即子类可以对父类进行扩展。
3. 子类可以用自己的方式实现父类的方法。
4. Java的继承是单继承,但是可以多重继承,单继承就是一个子类只能继承一个父类,多重继承就是,例如A类继承B类,B类继承C类,所以按照关系就是C类是B类的父类,B类是A类的父类,这是java继承区别于C++继承的一个特性。
5. 提高了类之间的耦合性(继承的缺点,耦合度高就会造成代码之间的联系)。
抽象
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
抽象类总结规定
1. 抽象类不能被实例化(初学者很容易犯的错),如果被实例化,就会报错,编译无法通过。只有抽象类的非抽象子类可以创建对象。
2. 抽象类中不一定包含抽象方法,但是有抽象方法的类必定是抽象类。
3. 构造方法,类方法(用static修饰的方法)不能声明为抽象方法。
4. 抽象类的子类必须给出抽象类中的抽象方法的具体实现,除非该子类也是抽象类。
5. 因为不能被实例化,所以只能被继承才能用,一个子类只能继承一个抽象类。
接口
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
接口与类的区别:
- 接口不能用于实例化对象。
- 接口没有构造方法。
- 接口中所有的方法必须是抽象方法。
- 接口不能包含成员变量,除了 static 和 final 变量。
- 接口不是被类继承了,而是要被类实现,多实现用逗号隔开。
- 接口支持多继承。
接口特性
- 接口中每一个方法也是隐式抽象的,接口中的方法会被隐式的指定为 public abstract(只能是 public
abstract,其他修饰符都会报错)。- 接口中可以含有变量,但是接口中的变量会被隐式的指定为 public static final 变量(并且只能是 public,用
private 修饰会报编译错误)。- 接口中的方法是不能在接口中实现的,只能由实现接口的类来实现接口中的方法。
抽象类和接口的区别
1. 抽象类中的方法可以有方法体,就是能实现方法的具体功能,但是接口中的方法不行。
2. 抽象类中的成员变量可以是各种类型的,而接口中的成员变量只能是 public static final 类型的。
3. 接口中不能含有静态代码块以及静态方法(用 static 修饰的方法),而抽象类是可以有静态代码块和静态方法。
4. 一个类只能继承一个抽象类,而一个类却可以实现多个接口。
阅读全文
0 0
- java继承、抽象、接口介绍及区别
- java继承、抽象、接口介绍以及区别
- java--继承,抽象,接口
- Java 继承、抽象、接口
- java 接口与抽象类及区别
- 接口 抽象类 继承 区别
- JAVA 继承基本类、抽象类、接口区别与联系
- JAVA继承 抽象类 接口
- Java继承、抽象、接口、多态
- Java接口、抽象类、继承
- Java基础--继承、抽象、接口
- java基础--继承,抽象,接口
- Java基础继承、抽象、接口
- Java基础---继承、抽象、接口
- 6、Java继承、抽象、接口
- Java 继承 抽象类 接口
- JAVA-抽象类、接口、继承
- Java接口,抽象类,继承
- 51单片机学习经历
- 2003
- 125. Valid Palindrome
- 从输入url到页面展示到底发生了什么
- sdnu 1080
- java继承、抽象、接口介绍及区别
- 关于apache POI excel文件导入导出
- CODESYS中Function和Function Block的区别
- 自定义View改变圆的颜色设置开始、重置按钮
- Linux安装redis
- linux安装mysql与已有文件冲突
- 文件信息的读取和写入
- myeclipse 中的db browser查询结果为空 中文查询 编码问题
- [UGUI功能]UGUI实现按住拖拽UI功能