接口

1) 接口关键字:interface,修饰符只有public和默认

2) 接口中定义的域变量名全是final static 

3) 接口无构造方法,所有成员方法都是抽象方法

4) 具有继承性

5) 接口和子接口都不能有自己的实例对象,但可有自己的声明

例1

abstract class Door
{
    public abstract void open();
    public abstract void close();
 }
interface 防盗接口
{
     public abstract void 防盗();
}
interface 防水接口
{
     public abstract void 防水();
}
interface 防火接口
{
      public abstract void 防火();
}

class 防盗门 extends Door implements 防盗接口
{
public void open()
  {System.out.println("我是防盗门,我实现了open()方法");}
public void close()
   {System.out.println("我是防盗门,我实现了close()方法");}
public void 防盗()
   {System.out.println("我是防盗门,我实现了防盗()方法");}
}

class 高科技门 extends Door implements 防盗接口,防水接口,防火接口
 { public void open()
      {System.out.println("我是高科技门,我实现了open()方法");}
   public void close()
      {System.out.println("我是高科技门,我实现了close()方法");}
   public void 防盗()
      {System.out.println("我是高科技门,我实现了防盗()方法");}
   public void 防水()
      {System.out.println("我是高科技门,我实现了防水()方法");}
   public void 防火()
      {System.out.println("我是高科技门,我实现了防火()方法");}
}

class Car implements 防盗接口
{
    public void 防盗()
     {System.out.println("我是car,我实现了防盗()方法");}
}

public class InterFaceTest1
{
     public static void main(String[] args)
    {
         防盗门 fdm=new 防盗门();
         高科技门 gkjm=new 高科技门();
         Car car=new Car();
         fdm.open();
         fdm.close();
         fdm.防盗();
         gkjm.open();
         gkjm.close();
         gkjm.防盗();
         gkjm.防水();
         gkjm.防火();
         car.防盗();
      }
}

运行效果:

例2

interface Fly
{
     public abstract void fly();
}
class airplane implements Fly
{
     public void fly(){ System.out.println("我是飞机,我有助推器,我可以飞行。");}
}
class birds implements Fly
{
     public void fly(){ System.out.println("我是麻雀,我有翅膀,我振翅高飞。");}
}

public class InterfaceTest
{
    public static void main(String[] args)
    {
          Fly a1=new airplane();
          Fly a2=new birds();
          a1.fly();
          a2.fly();
     }
}

运行效果:

posted on 2017-05-21 16:34  Iitb  阅读(150)  评论(0)    收藏  举报

导航