Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/355.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何组织类接口层次结构?_Java_.net_Frameworks - Fatal编程技术网

Java 如何组织类接口层次结构?

Java 如何组织类接口层次结构?,java,.net,frameworks,Java,.net,Frameworks,既然可以对类接口执行多重继承,那么您是否遵循一些具体的规则来创建和组织它们,以避免接口重叠?例如,我想您谈论的是这样的东西: interface I1 { void methodName (); } interface I2 { void methodName (); //same method name } public Class MyClass implements I1, I2 {...} 我不知道有什么具体的规则来应对这种情况,因为它们非常罕见。(与C#不同,这个“用

既然可以对类接口执行多重继承,那么您是否遵循一些具体的规则来创建和组织它们,以避免接口重叠?例如,我想您谈论的是这样的东西:

interface I1 {
   void methodName ();
}

interface I2 {
   void methodName (); //same method name
}

public Class MyClass implements I1, I2 {...}
我不知道有什么具体的规则来应对这种情况,因为它们非常罕见。(与C#不同,这个“用例”有一个构造(显式接口实现)


依我的拙见,这种情况是,也应该是非常罕见的。试着避开它(/像这样拿着它)。因此,这更像是一个学术问题,而不是与实践相关的问题。

我想你说的是这样的东西:

interface I1 {
   void methodName ();
}

interface I2 {
   void methodName (); //same method name
}

public Class MyClass implements I1, I2 {...}
我不知道有什么具体的规则来应对这种情况,因为它们非常罕见。(与C#不同,这个“用例”有一个构造(显式接口实现)


依我的拙见,这种情况是,也应该是非常罕见的。试着避开它(/像这样拿着它)。因此,这更像是一个学术问题,而不是与实践相关的问题。

我遵循的一般规则是:每个接口只应建模一个精确的方面或功能,因此您可以继承多个接口,而不会出现重叠问题。您可能还想阅读本文和相关答案。

我遵循的一般规则是:每个接口只应建模一个精确的方面或功能,因此您可以继承多个接口,而不会出现重叠问题。您可能还想阅读本文和相关答案。

Java(至少到Java 7)不支持多实现继承,只支持多接口继承。我猜你指的是这样一种情况:

public class Overlapping {

    interface A {
        void myMethod();
    }

    interface B {
        void myMethod();
    }

    static class C implements A, B {
        public void myMethod() {
            System.err.println("it works!");
        }
    }

    public static void main(String[] args) {
        new C().myMethod();
    }
}
这不是问题(它可以工作!)。如果API重叠,它只是合并

是一篇关于Java中多重继承的有用文章

Java(至少到Java 7)不支持多实现继承,只支持多接口继承。我猜你指的是这样一种情况:

public class Overlapping {

    interface A {
        void myMethod();
    }

    interface B {
        void myMethod();
    }

    static class C implements A, B {
        public void myMethod() {
            System.err.println("it works!");
        }
    }

    public static void main(String[] args) {
        new C().myMethod();
    }
}
这不是问题(它可以工作!)。如果API重叠,它只是合并


是一篇关于Java中多重继承的有用文章

我不太清楚你问什么。你能提供一些例子吗?请举一些例子,重叠是一个问题。我不确定你问什么。你能提供一些例子吗?请提供一些例子,其中重叠是一个问题。文章的链接断开了。文章的链接断开了。谢谢我以前听说需要AOP来创建关注点分离。引用“在计算中,面向方面编程(AOP)”是一种编程范式,旨在通过允许分离横切关注点来增加模块化”。然而,关注点分离处理的是类/接口的主要关注点,而不是横切关注点。好的,谢谢,我曾经听说需要AOP来创建关注点分离。引用“在计算中,面向方面编程(AOP)”是一种编程范式,旨在通过允许分离横切关注点来增加模块化”。然而,关注点分离处理类/接口的主要关注点,而不是横切关注点。