接口(interface)和接口实现(implements),抽象类和接口有什么区别?

一、接口

1、接口是一种“引用数据类型”。

2、接口是完全抽象的。

3、接口怎么定义?

        【修饰符列表】 interface 接口名{}

4、接口支持多继承。

//java类是单继承的。classB Extends classA
//java接口可以多继承。Interface3 Extends Interface0, Interface1, interface……
//接口不支持继承普通类!!!
//注意:接口多继承的都也是接口类。
public interface Test extends Test1,Test2{

}

5、接口中只有常量+抽象方法!!!

6、接口中所有元素都是public修饰的!

7、接口中的抽象方法的public abstract可以省略。

8、接口中的常量的public static final可以省略。

9、接口中不能有方法体。

10、一个非抽象的类,实现接口的时候,必须将接口中所有的方法都加以实现。

11、extends和implements可以共存,extends在前,implements在后。

12、使用接口,可以使用多态(父类型引用指向子类型对象)。

二、接口实现

1、一个类通过使用关键字implements声明自己实现一个或多个接口。

 class A implements Printable,Addable{}

2、如果一个非抽象类实现了某个接口,那么这个类必须重写该接口的所有方法,而且方法的访问权限一定要显示地用public来修饰。

3、如果一个类声明实现一个接口,但没有重写接口中的所有方法,那么这个类必须是抽象类,也就是说,抽象类既可以重写接口中的方法,也可以直接拥有接口中的方法。

public interface Test {
//省略public abstract
      void A();
}

class Test1 implements Test {
//实现接口抽象方法
   public void A(){

   }
}

三、抽象类和接口有什么区别?


抽象类是半抽象的。
接口是完全抽象的,


抽象类中有构造方法。
接口中没有构造方法。
接口和接口之间支特多继承。


类和类之间只能单维承,
一个类可以同时实现多个接口。


一个抽象类只能维承一个类(单继承)。
接口中只允许出现常量和抽象方法。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值