A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 史卜坤 中级黑马   /  2012-6-13 15:27  /  1207 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

抽象类和接口的定义方式不同,定义一个名为Demo的抽象类。使用抽象类的方式定义Demo抽象类:

abstract class Demo {
abstract void method1();
abstract void method2();



使用接口的方式定义Demo抽象类:

interface Demo {
void method1();
void method2();

}

认为在抽象类方式中,Demo可以有自己的数据成员,也可以有非abstarct的成员方法,而在接口方式的实现中,Demo只能够有静态的不能被修改的数据成员,也就是必须是static final的,不过在接口中一般不定义数据成员,所有的成员方法都是抽象的。大体上可以说接口是一种特殊形式的抽象类吧。

1 个回复

正序浏览
抽象方法:仅有定义,没有具体实现的方法
抽象类:含有抽象方法的类
一个类如果被定义为抽象类,它就不能被实例化,也就是说,不能有自己的对象

声明接口使用关键字“interface”
接口中一般只包含一组public抽象方法(且必须是公有抽象方法,但方法定义中public abstract可省略),也可以包含public 静态final数据
Java不允许一个子类继承多个超类,却允许一个子类继承一个超类并实现多个接口,各个接口间以“,”分隔
接口的另一个用途是:声明一组可用于多个类声明的常量
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马