java接口(interface)和子类

标签 java oop inheritance interface

<分区>

我有下一个问题。我有界面

public interface MyInterface {
    blah blah
}

我有 child :

public class MyChild implemets MyInterface {
    blah blah
}

有什么区别:

MyChild child = new MyChild();

MyInterface child = new MyChild();

?

最佳答案

您添加的代码片段是 -

MyChild child = new MyChild();  

MyInterface child = new MyChild();  

在第一种情况下,child 只能包含 MyChild 类的对象。但在第二种情况下,child(其中 child 是一个 MyInterface)可以包含那些实现了 MyInterface 的类的所有对象。在这里您可以获得多态性的优势。

关于java接口(interface)和子类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29322546/

相关文章:

java - 如何使用不在接口(interface)中的成员强制转换为多态类型

c++ - 在类矩阵 mat(m,n) 中初始化 vector<vector<int>> data(m, vector<int>(n))

c++ - 正确实现继承

c++ 模板类继承问题

java - 适用于 Solaris 10 VM 的 java 64 位下载

java - 如何在 Spring (Boot) 中装饰 REST 响应?

java - OpenNI UserTracker.java 示例崩溃

java - JPanel 检查值是否更改

java - 具有接口(interface)的多重继承歧义

python - 使用键/值继承,但将其排除在 pyyaml 的结果之外