java多线程接口_关于多线程:实现接口Java

本问题已经有最佳答案,请猛点这里访问。

Possible Duplicate:

What is an interface in Java?

我有对象语言和对象范例方面的经验,但是对"实现"语句有一个疑问。 怀疑它是否包含代码(功能)? 因此,要非常具体地说明" MyClass实现XInterface"是否包含来自实现该接口的其他类的代码?

类继承是简单的包含代码,从某种意义上说,我知道"包含"可能不是正确的词,但是当您使用"扩展"时,这就是讨论的地方。 您包括父类的功能。

因此,让我们以Runnable接口为例。 它只有一个run()减速。 这可能没有任何意义,只是MyClass将具有run()的实现。 令我感到困惑的是,例如在某个文件中实现一行减速将使我受益匪浅...使用"实现"将获得的实际功能(和代码)在哪里? 因此,如果我使用:

MyClass implements Runnable {}

Runnable obj = new (Runnable) MyClass();

obj.run();//will call run() implementation from MyClass

obj.otherFunctions();/* so this calls functions from other classes that implement interface, but I don't know what functions from other classes are implementing, or even do I need them?*/

我还必须每个线程都具有一个类,例如MyClass extends Thread implements Runnable吗?

如果类"实现"接口,则它必须实现该接口。

MyClass实现Runnable {}不会编译:您必须在类中实现接口的所有方法。

docs.oracle.com/javase/tutorial/java/concepts/interface.html-阅读本教程将对您有所帮助。 关于"其他对象",您的问题毫无意义。 接口是一种合同,这意味着您的课程将提供这些方法

因此,可以保证该类将实现ALL接口方法(或者将是抽象的,并且仍将无法被实例化)。 实现InterfaceX的MyClass和实现InterfaceX的SomeOtherClass之间有什么关系? 没有?

实现接口的类C1意味着必须在类C1中实现接口中定义的所有方法。 然后,调用类可以调用这些方法,因为众所周知Cl会实现(完全填充)接口。

例如查看List接口:ArrayList和LinkedList都实现List,它们具有相同的公共方法(例如add(),get()),但内部工作方式不同。

List list = new ArrayList();

list.add(3);

以后,如果有人希望ArrayList由另一个也实现List的类交换,则只需要交换一行

List list = new LinkedList();

list.add(3);

如果编程为Interfaces,则代码较少依赖特定的类。 当您以后想要交换一个类以进行测试时,这具有优势,例如,您可以通过一个测试用例来控制该类。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值