关于抽象类和接口
2012-11-17 19:06
204 查看
首先从定义出发了解一下抽象方法和抽象类。
java中提供一种叫抽象方法的机制,这种方法是不完整的,仅有声明没有方法体
如:abstract void method();
包含抽象方法的类叫做抽象类。如果一个类包含一个或多个抽象方法,该类必须被限定为抽象的(否则编译会报错)。
如:abstract class intrument() {
abstract void play();
}
当然,我们也可以创建一个没有任何抽象方法的抽象类。但通常情况下会让包含的方法没有了实际意义
interface是一个完全抽象类,它根本就没有提供任何具体的实现,它允许确定方法名,参数列表和返回值类型,却是没有任何方法体。
接口只是提供了形式,没有提供任何具体实现。
如: interface Instrument() {
void play();
}
interface不仅是一个极度抽象的类,因为它允许人们通过创建换一个能够向上转型的为多种基类的类型,来实现某种雷系多重继承变种特性。
接口中可以显示将方法声明为public的,但即使你不这样做,他们也是public的。也就是说,在接口中定义的方法必须肯定是public的!
同时接口也可以包含域,但是这些域隐示的都是static 和final的!
待续。。。
java中提供一种叫抽象方法的机制,这种方法是不完整的,仅有声明没有方法体
如:abstract void method();
包含抽象方法的类叫做抽象类。如果一个类包含一个或多个抽象方法,该类必须被限定为抽象的(否则编译会报错)。
如:abstract class intrument() {
abstract void play();
}
当然,我们也可以创建一个没有任何抽象方法的抽象类。但通常情况下会让包含的方法没有了实际意义
interface是一个完全抽象类,它根本就没有提供任何具体的实现,它允许确定方法名,参数列表和返回值类型,却是没有任何方法体。
接口只是提供了形式,没有提供任何具体实现。
如: interface Instrument() {
void play();
}
interface不仅是一个极度抽象的类,因为它允许人们通过创建换一个能够向上转型的为多种基类的类型,来实现某种雷系多重继承变种特性。
接口中可以显示将方法声明为public的,但即使你不这样做,他们也是public的。也就是说,在接口中定义的方法必须肯定是public的!
同时接口也可以包含域,但是这些域隐示的都是static 和final的!
待续。。。
相关文章推荐
- 关于抽象类和接口的问答题
- 关于抽象类和接口
- 关于接口和抽象类
- 转载一篇关于 接口和抽象类 的文章,写的很好
- 关于java中继承抽象类和实现接口的区别
- 【JAVA基础】④关于重载,重写,抽象类,接口,内部类和单例模式
- 关于抽象类和接口的区别
- 关于抽象类和接口
- 关于抽象类和接口
- 7.26 JAVA关于工具类、重载重写以及抽象类接口的小记
- 浅谈 Java 关于接口与抽象类的理解(后续更新)
- 关于接口与抽象类的感悟
- 关于Java中抽象类和接口区别的总结
- 关于JAVA的OOP程序设计中抽象类和接口的区别介绍
- 关于Java接口和抽象类的思考
- 关于接口与抽象类
- 关于Java中的接口和抽象类的区别
- 关于接口和抽象类
- 关于抽象类和接口
- 关于抽象类和接口一些简单的概念