JAVA:一个类实现多个接口

求"一个类实现多个接口"的例子不用进行理论说明例子是猫吃鱼狗吃肉也好,计算面积也好写得多简单都没有问题但是请务必"实现多个接口"也麻烦必要的地方加上注释... 求"一个类实现多个接口"的例子
不用进行理论说明
例子是猫吃鱼狗吃肉也好,计算面积也好
写得多简单都没有问题
但是请务必"实现多个接口"

也麻烦必要的地方加上注释
展开
 我来答
小肥肥2
高粉答主

推荐于2019-10-11 · 醉心答题,欢迎关注
知道答主
回答量:50
采纳率:100%
帮助的人:1万
展开全部

//A接口interface A{

public int getA();

}

//B接口

interface B{

public int getB();

}

//实现了某个接口必须实现其全部的方法

public class ImpAB implements A,B{

public int getA() {

return 0;

}

public int getB() {

return 0;

}

}

扩展资料:

功能

在Java语言规范中,一个方法的特征仅包括方法的名字,参数的数目和种类,而不包括方法的返回类型,参数的名字以及所抛出来的异常。

在Java编译器检查方法的重载时,会根据这些条件判断两个方法是否是重载方法。但在Java编译器检查方法的置换时,则会进一步检查两个方法(分处超类型和子类型)的返还类型和抛出的异常是否相同。

接口实现和类继承的规则不同,为了数据的安全,继承时一个类只有一个直接父类,也就是单继承,但是一个类可以实现多个接口,接口弥补了类的不能多继承缺点,继承和接口的双重设计既保持了类的数据安全也变相实现了多继承。

Java接口本身没有任何实现,因为Java接口不涉及表象,而只描述public行为,所以Java接口比Java抽象类更抽象化。但是接口不是类,不能使用new 运算符实例化一个接口。

Java接口的方法只能是抽象的和公开的,Java接口不能有构造器,Java接口可以有public、static和final属性。即接口中的属性可以定义为 public static final int value=5。

接口把方法的特征和方法的实现分割开来。这种分割体现在接口常常代表一个角色,它包装与该角色相关的操作和属性,而实现这个接口的类便是扮演这个角色的演员。一个角色由不同的演员来演,而不同的演员之间除了扮演一个共同的角色之外,并不要求其它的共同之处。

参考资料来源:百度百科--java接口

参考资料来源:百度百科--Java 编程语言

塔駡德
高粉答主

推荐于2019-09-06 · 关注我不会让你失望
知道答主
回答量:46
采纳率:0%
帮助的人:1.5万
展开全部

abstract class和interface是Java语言中对于抽象类定义进行支持的两种机制。它们之间区别:

接口是公开的,里面不能有私有的方法或变量,而抽象类是可以有私有方法或私有变量的;

代码演示:

接口A

public interface A {    

public abstract void play() ;   

public abstract void beFriendly(); 

}

接口B

public interface B {    

public abstract void play() ;   

public abstract void beFriendly(); 

}

一个类实现多个接口@Service("weixinPay")

public class WeixinPay implements Pay{

@Overrid

public Object pay(Map<String, Object> map){

return "weixinpay";

}

}

接口里定义的变量只能是公共的静态的常量,抽象类中的变量是普通变量;  

实现接口的一定要实现接口里定义的所有方法,而实现抽象类可以有选择地重写需要用到的方法,一般的应用里,最顶级的是接口,然后是抽象类实现接口,最后才到具体类实现;

接口只能做方法申明,抽象类中可以做方法申明,也可以做方法实现;

接口可以实现多重继承,而一个类只能继承一个超类;

扩展资料:

Java接口是一系列方法的声明,是一些方法特征的集合,一个接口只有方法的特征没有方法的实现,因此这些方法可以在不同的地方被不同的类实现,而这些实现可以具有不同的行为(功能)。

两种含义:一,Java接口,Java语言中存在的结构,有特定的语法和结构;二,一个类所具有的方法的特征集合,是一种逻辑上的抽象。前者叫做“Java接口”,后者叫做“接口”。

功能

在Java语言规范中,一个方法的特征仅包括方法的名字,参数的数目和种类,而不包括方法的返回类型,参数的名字以及所抛出来的异常。在Java编译器检查方法的重载时,会根据这些条件判断两个方法是否是重载方法。但在Java编译器检查方法的置换时,则会进一步检查两个方法(分处超类型和子类型)的返还类型和抛出的异常是否相同。

接口实现和类继承的规则不同,为了数据的安全,继承时一个类只有一个直接父类,也就是单继承,但是一个类可以实现多个接口,接口弥补了类的不能多继承缺点,继承和接口的双重设计既保持了类的数据安全也变相实现了多继承。

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
一只豚鹿
推荐于2019-08-05 · TA获得超过1062个赞
知道答主
回答量:17
采纳率:50%
帮助的人:8440
展开全部

Java接口是一系列方法的声明,是一些方法特征的集合,一个接口只有方法的特征没有方法的实现,因此这些方法可以在不同的地方被不同的类实现,而这些实现可以具有不同的行为(功能)
接口:public class x{}

1例如:public class void a implement x{实现接口方法}

2例如:

public class void b implement x{实现接口方法}同样可以实现接口X

代码演示:

接口A

public interface A {    
public abstract void play() ;   
public abstract void beFriendly(); 
}
接口B
public interface B {    
public abstract void play() ;   
public abstract void beFriendly(); 
}
一个类实现多个接口@Service("weixinPay")
public class WeixinPay implements Pay{
@Overrid
public Object pay(Map map){
return "weixinpay";
}
}



扩展资料

接口是常量值和方法定义的集合。接口是一种特殊的抽象类。

java类是单继承的。classB Extends classA

java接口可以多继承。Interface3 Extends Interface0, Interface1, interface…… 

不允许类多重继承的主要原因是,如果A同时继承B和C,而b和c同时有一个D方法,A如何决定该继承那一个呢?但接口不存在这样的问题,接口全都是抽象方法继承谁都无所谓,所以接口可以继承多个接口。 

注意: 

1)一个类如果实现了一个借口,则要实现该接口的所有方法。

2)方法的名字、返回类型、参数必须与接口中完全一致。如果方法的返回类型不是void,则方法体必须至少有一条return语句。 

3)因为接口的方法默认是public类型的,所以在实现的时候一定要用public来修饰(否则默认为protected类型,缩小了方法的使用范围)。

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
阿派讲故事
推荐于2019-10-05 · TA获得超过3136个赞
知道答主
回答量:4
采纳率:100%
帮助的人:3287
展开全部

通过内部类实现接口,解决多个接口中方法重名问题

一个接口只有方法的特征没有方法的实现,因此这些方法可以在不同的地方被不同的类实现。

例如下面这串代码就可以实现一个类多个接口:

interface Machine {
void run();
}

class Person {
void run() {
System.out.println("person start");
}
}

public class Android extends Person {
private class MachineHeart implements Machine {

public void run() {
System.out.println("machine start");
}
}

Machine getMachine(){
return new MachineHeart();
}
public static void main(String[] args) {
Android android=new Android();
Machine machine=android.getMachine();
machine.run();
android.run();
}
}

扩展资料

实现一个类多个接口的好处,当实现多个接口时,如果两个接口有同样的方法,那么实现一次就可以了。

以上代码可以实现编译,说明接口可以继承多个接口。为什么不能实现类的多继承,主要是防止多个类有相同的方法名,然而方法体不一样,子类就比较难选择了。

参考资料百度百科java

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
韦涵涵
推荐于2017-12-16 · TA获得超过3892个赞
知道大有可为答主
回答量:1034
采纳率:100%
帮助的人:1509万
展开全部
//A接口
interface A{
public int getA();
}
//B接口
interface B{
public int getB();
}
//实现了某个接口必须实现其全部的方法
public class ImpAB implements A,B{

public int getA() {
return 0;
}

public int getB() {
return 0;
}
}

已经很简单的了...

呵呵....

祝楼主早日成功哈!!!
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(8)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式