接口总结

来源:互联网 发布:淘宝公益宝贝 买家 编辑:程序博客网 时间:2024/06/16 16:11
接口:





接口:

接口是一种行为的抽象。
接口可以看做是抽象类的特例。
抽象类中可以有抽象方法,可以有具体方法。
但接口中只能有抽象方法。

定义接口使用interface。
实现接口使用implements。

接口中定义的方法都是抽象方法,修饰符为public abstract。即使不写,也是公共的抽象方法。

public interface Iwash {
     public void wash();
}
class Mum implements Iwash{

     @Override
     public void wash() {
           System.out.println("用搓衣板洗");
     }

}
class Washer implements Iwash{

     @Override
     public void wash() {
           System.out.println("用电机搅动");

     }

}

public class IwashTest {
     public static void main(String[] args){

     Iwash s =new Mum();
     s.wash();
}
}


如果一个方法参数为接口类型,意味着可以传递该接口的任何实现类对象。


public class Son {
     public void clearCoat(Iwash s ) {
     s.wash();

     }

}


public class IwashTest {
     public static void main(String[] args){

//   Iwash s =new Mum();
//   s.wash();
           Son s = new Son();
           s.clearCoat(new Washer());

     }
}


接口中可以定义变量,其修饰符是 public static final (公共静态常量)

接口可以继承接口。同时可以继承多个接口。一个类实现一个接口,不但要实现该接口中定义的抽象方法,而且要实现该接口 父 接口中定义的抽象方法。


抽象类和接口的区别:
  1. 抽象类和接口都不能直接实例化。
  2. 抽象类中可以有抽象方法,也可以有具体方法。但是接口中只能有抽象方法。
  3. 抽象类中定义的变量是普通属性。但是接口中定义的变量是公共的,静态的常量。
  4. 一个类只能继承一个抽象类,但可以实现多个接口。


一个类实现一个接口,可以不完成实现接口中定义的抽象方法,但这个类只能是抽象类。同样,一个类继承一个抽象类,也可以不实现抽象类中定义的抽象方法,这个类也必须是抽象类。


一个类继承一个父类,由于子类对象包含一个完整的父类对象,所以可以继承父类中所有的方法和属性,包括私有方法和私有属性。但是私有方法和私有属性不能被子类直接访问,可以通过父类公有方法进行访问。(建立一个公有的方法,返回属性)


如果一个方法声明为私有的private,那么该方法默认修饰为final。也就是该方法不能被子类所重写。


一个方法的参数如果是父类类型,调用该方法时,可以传递任何一个子类对象。一个方法的参数如果是接口类型,表示调用该方法时,可以传递任何一个实现类对象。
0 0
原创粉丝点击