接口



接口:
接口是一种行为的抽象。接口可以看做是抽象类的特例。抽象类中可以有抽象方法,可以有具体方法。
但接口中只能有抽象方法。定义接口使用interface。实现接口使用implements。

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

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

接口中可以定义变量,其修饰符是 public static final

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

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

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

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

如果一个方法声明为private。那么该方法默认修饰为final。也就是该方法不能被子类所重写。
私有方法默认声明为final,也不能被子类重写。 但声明为抽象方法,是要求该方法子类重写。所以矛盾。
抽象方法不能声明为private和static。

一个方法的参数如果是父类类型,表示调用该方法时,可以传递任何一个子类对象。一个方法的参数如果
是接口类型,表示调用该方法时,可以传递任何一个实现类对象。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值