Java基础----接口

java不支持多继承,一个类只能有一个父类(单继承性使得java简单,易于管理----单继承性是怎样使java简单易于管理的?)。弥补java单继承性带来的不足(什么不足?),java使用了接口,一个类可以实现多个接口(java的单继承性和接口与C++的多继承相比有什么优点和缺点?)。

    接下来我们看看接口的规定:

1,接口通过关键字interface来声明。(如果关键字interface 前面加上public 表示该接口可以被任何类使用。如果不加则表示该接口只能被同一个包下的类使用)

2,接口体包括常量定义和方法定义。(注意:在接口中的变量必须被初始化----这一点与类的声明是不同的,并且在实现该接口的类中是不可以改变接口中的变量的)

3,接口中的方法默认是public和abstract的。

4,如果父类实现了某一接口,那么子类也实现了该接口。子类不必再显示的用implements关键字声明自己实现了某个接口。

5,一个接口可以被另一个接口继承。(由于接口中的方法和常量都是public的,所以子接口继承付父接口的所有常量和方法s)

 

问题:

1,通过上面的规定可以看出:一个接口中的常量只能用public static final这三个关键字中的几个来修饰,方法只能用public abstract中的几个关键字来修饰。还有,接口中的变量为什么不能是private, protected类型的变量呢?仔细一想其实这也很好理解,若把implements 看做特殊的 extends,假设接口中的变量时private类型的,若一个类实现(implements)了这个接口,则该类是不能继承private类型的数据成员的。在接口中的方法只能有声明,不能有任何其他操作,那接口中的变量没有进行任何操作,也就是说该变量没有任何意义。那为什么不能用protected来修饰呢?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值