接口的定义和抽象的关系

来源:互联网 发布:java节假日 编辑:程序博客网 时间:2024/05/02 01:04

1.如果一个类中完全由全局常量( static final ),抽象方法声明,则可以定义一个接口。

interface 接口名称{

全局常量;

抽象方法;

}

interface A{

public static finalString NAME=" 张三";

public abstract void fun();

public abstract String getInfo();

}

前面的关键字可以省略,应为接口中会默认全局常量和抽象方法

与抽象类一样 接口的使用也必须要通过子类实现,通过关键字implements实现,子类必须覆写全部抽象方法。。。。。

class 子类 implements 接口A,接口B{

}

interface A{
public static finalString NAME=" 张三"; //全局常量
public abstract void fun();//抽象方法
};
interface B
{
public abstract void print();//抽象方法
}; 
class C implements A,B //c同时实现A接口和B接口
{
public void fun(){
System.out.println("覆写A中的抽象方法-------");
}
public void print(){
System.out.println("覆写B中的抽象方法-------");
}
};
public class InterfaceDemo02
{
public static void main(String args[]){
C c=new C();
c.print();
c.fun();
}
};

一个子类可以同时继承抽象类和实现接口

class 子类 extends 抽象类 implements 接口A,接口B,接口c.....{}

 interface class A{
public static finalString NAME=" 张三"; //全局常量
public abstract void fun();//抽象方法
};
abstract class B
{
public abstract void print();//抽象方法
}; 
class C extends B implements A //c同时继承A类和实现B接口
{
public void fun(){
System.out.println("覆写A中的抽象方法-------");
}
public void print(){
System.out.println("覆写B中的抽象方法-------");
}
};
public class InterfaceDemo03
{
public static void main(String args[]){
C c=new C();
c.print();
c.fun();
}
};

抽象类可以实现接口,但是抽象类的子类必须覆写抽象类和接口中的抽象方法

 interface class A{
public static finalString NAME=" 张三"; //全局常量
public abstract void fun();//抽象方法
};
abstract class B implements A
{
public abstract void print();//抽象方法
}; 
class C extends B //c继承抽象类B
{
public void fun(){
System.out.println("覆写A中的抽象方法-------");
}
public void print(){
System.out.println("覆写B中的抽象方法-------");
}
};
public class InterfaceDemo03
{
public static void main(String args[]){
C c=new C();
c.print();
c.fun();
}
};

接口的多继承

一个接口可以通过extends 关键字同时继承多个接口,实现接口的多继承。

interface 子接口 extends 接口1,接口2,接口3.。。。。。。。。。{}



0 0
原创粉丝点击