java学习笔记-接口

接口
有些时候必须从几个类中派生出一个子类,继承他们所有的属性和方法。但是,java不支持多重继承。有了接口,就可以得到多重继承的效果。
从本质上讲,接口是一种特殊的抽象类,这种抽象类中只包含常量和方法的定义,而没有变量和方法的实现。
一个类可以实现多个接口,接口也可以继承其他的接口。
接口的特点
1.接口中的所有成员变量都默认是由public static final修饰的。
2.接口中的所有方法都默认的是由public abstract修饰的。
3.接口没有构造器;
4.接口采用多层继承机制。
接口中的注意事项
如果实现接口的类中没有实现接口中的全部方法,必须将此类定义为抽象类。
抽象类和接口之间的差别
抽象类是对于一类事物的高度抽象,其中既有属性也有方法,接口是对方法的抽象,也就对一系列动作的抽象。
当需要对一类事物抽象的时候,应该是使用抽象类,好形成一个父类。
当需要对一系列的动作抽象,就使用接口,需要使用这些动作的类去实现相应的接口即可。

接口组成更新
接口的组成:
常量和抽象方法
默认方法,静态方法和私有方法。
如果接口的实现类中的重写方法和更新方法的名字重合的时候,会默认执行实现类中的重写方法。
默认方法
在这里插入图片描述
在这里插入图片描述

默认方法不是抽象方法,所以不强制被重写。但是可以被重写,重写的时候去掉default关键字
主要用于升级接口,不破坏原有的实现类的代码。
静态方法
静态方法只能通过接口名来进行调用,不能通过实现类名或者对象名调用。
在这里插入图片描述

在这里插入图片描述
私有方法
private void show(){}
默认方法可以调用私有的静态方法和非静态方法。
静态方法只能调用私有的静态方法

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值