- /*
- 接口:
- 常量:public static final int NUM = 3;
- 方法:public abstract void show();
- 特点:
- 1、接口是对外暴露的规则;
- 2、接口是程序的功能扩展;
- 3、接口可以多实现;
- 4、类与接口之间是实现关系,而且可以继承一个类的同时实现多个接口;
- 5、接口与接口之间可以有继承关系,可以多继承。
- 接口是不可以创建对象的,因为接口中的方法全是抽象方法。
- 接口需要被子类实现,子类对接口中的所有抽象方法进行覆盖后,子类才可以实例化;
- 如果未覆盖完,那子类也是一个抽象类。
- */
- interface InterA
- {
- public static final int NUM = 3;
- public abstract void show();
- }
- interface InterB
- {
- public abstract void method();
- }
- interface InterC extends InterB,InterA//多继承
- {
-
- public abstract void method1();
- }
- class Demo1
- {
- public void function()
- {
- System.out.println("d");
- }
- }
- //继承一个父类且实现一个接口,由于接口InterC继承了InterB,InterA
- //所以show(),method(),method1()三个方法都要覆盖。
- class Demo2 extends Demo1 implements InterC
- {
- //public int NUM = 5;
- //public final int NUM = 5;
- //public static final int NUM = 5;
- public void show()
- {
- System.out.println("a");
- }
- public void method()
- {
- System.out.println("b");
- }
- public void method1()
- {
- System.out.println("c");
- }
- }
- class Interface
- {
- public static void main(String[] args)
- {
- Demo2 d2 = new Demo2();
- d2.show();
- d2.method();
- d2.method1();
- d2.function();
- System.out.println(d2.NUM);
- }
- }
复制代码
在Demo2中定义
public int NUM = 5;
public final int NUM = 5;
public static final int NUM = 5;
这三个都可以啊
而且最后System.out.println(d2.NUM);
打印的结果是5
这些怎么理解??
|
|