2 实现接口
1.接口用类来实现
在java语言中,接口由类来实现以便使用接口中的方法。一个类需要在类声明中使用关键字implements声明该类实现一个或多个接口。如果实现多个接口,用逗号隔开接口名
class Dog extends Animal implements Eatable,Sleepable{
}
2.重写接口中的方法
如果一个非抽象类实现了某个接口,那么这个类必须重写这个接口中的所有方法。
3.实现接口的类的子类自然也实现了该接口
因为实现接口的类自然要重写接口中的abstract方法,子类也就自然继承了这些方法
4.接口也可以被继承,即可以通过关键字extends声明一个接口是另一个接口的子接口。由于接口中的方法和常量都是public的,子接口将继承父接口中的全部方法和常量。
Computable.java
public interface Computable {
int MAX =46;
int f(int x);
}
China.java
public class China implements Computable{
int number;
public int f(int x){//不要忘记public关键字,不然就变成了友好方法,降低了访问权限 我的理解:所谓降低就是缩小了访问的范围
int sum =0;
for(int i=1;i<=x;i++){
sum =sum+i;
}
return sum;
}
}
Japan.java
public class Japan implements Computable {
int number;
public int f(int x){
return MAX+x;
}
}
Example6_1.java
public class Example6_1 {
public static void main(String[] args) {
China zhang;
Japan henlu;
zhang =new China();
henlu =new Japan();
zhang.number=32+Computable.MAX;//用接口名访问接口的常量
// zhang.number=32+zhang.MAX; 这里貌似也可以用zhang直接调用MAX,但可能所有对象的MAX都会改变,因为MAX是类变量
henlu.number=14+Computable.MAX;
System.out.println("zhang的学号:"+zhang.number+",zhang求和结果:"+zhang.f(100));
System.out.println("henlu的学号:"+henlu.number+",henlu求和结果:"+henlu.f(100));
}
}
一个源文件里面只能有一个public,要么是类,要么是接口
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)