Java基础----抽象类与接口

来源:互联网 发布:linux恢复rm删除文件 编辑:程序博客网 时间:2024/04/29 03:46
/*接口成员特点成员变量;只能是常量,并且是静态的。默认修饰符:public static final建议:自己手动给出。构造方法:接口没有构造方法。成员方法:只能是抽象方法。默认修饰符:public abstract建议:自己手动给出。所有的类都默认继承自一个类:Object。类 Object 是类层次结构的根类。每个类都使用 Object 作为超类。*/interface Inter {public int num = 10;public final int num2 = 20;public static final int num3 = 30;//错误: 需要<标识符>//public Inter() {}//接口方法不能带有主体//public void show() {}//abstract void show(); //默认publicpublic void show(); //默认abstract}//接口名+Impl这种格式是接口的实现类格式/*class InterImpl implements Inter {public InterImpl() {super();}}*/class InterImpl extends Object implements Inter {public InterImpl() {super();}public void show() {}}//测试类class InterfaceDemo2 {public static void main(String[] args) {//创建对象Inter i = new InterImpl();System.out.println(i.num);System.out.println(i.num2);//i.num = 100;//i.num2 = 200;//System.out.println(i.num); //无法为最终变量num分配值//System.out.println(i.num2);//无法为最终变量num2分配值System.out.println(Inter.num);System.out.println(Inter.num2);System.out.println("--------------");}}


抽象类和接口的区别:
A:成员区别
抽象类:
成员变量:可以变量,也可以常量
构造方法:有
成员方法:可以抽象,也可以非抽象
接口:
成员变量:只可以常量
成员方法:只可以抽象

B:关系区别
类与类
继承,单继承
类与接口
实现,单实现,多实现
接口与接口
继承,单继承,多继承

C:设计理念区别
抽象类 被继承体现的是:”is a”的关系。抽象类中定义的是该继承体系的共性功能。
接口 被实现体现的是:”like a”的关系。接口中定义的是该继承体系的扩展功能。


0 0