实现一个引用多个类的Java类/接口

时间:2017-11-28 03:52:02

标签: java class interface

问题陈述: 我们有多个类文件(~200 +),每个文件都实现不同的方法,有些也使用彼此的方法来实现自己的方法。

我们希望在我们的代码中调用多个这些类方法(~20-30),并让它们提供诸如写入UI网页和从网页读取等功能。

由于我们希望简化这个过程,我们需要一个包含所有这些多类引用(~200 +)的类/接口,我们只需要在代码中导入/包含这个单个类/接口然后用它来引用类文件中的所有方法。

问题: 以上可能吗?如果是这样,如何 - 通过使用类或接口或其他东西?

我提供了我们在此处尝试过的示例和信息:Implement multiple classes in the same interface in Java?

基本上,我们已经尝试了

  1. 创建一个其中声明了所有其他类的类
  2. 创建一个接口,它具有跨多个类的实现(上面提到的~200 +)
  3. 实施了一个类和一个接口
  4. 似乎没有办法。

    作为我们在代码中想要的内容的一个要点,下面提供了一个示例。

    示例 这不是正确的代码或实现,只是想提供我们想要在代码中执行的操作的示例) :

    我有两个名为“ ABC_FamilyGivenName ”的课程& “ ABC_DOBGender ”。 我创建了一个界面“ Common ”。

    我想在类“ Application ”的代码中使用上述两个类中的方法。

    使用当前的实现,Java希望我向 ABC_FamilyGivenName 和&添加@Override。 ABC_DOBGender 如果我们有~500个这样的方法,这又会产生开销,因此需要在每个c~200类文件中覆盖所有~500 ??

    ***INTERFACE***:
    
    public interface Common {
        void ABC_GivenNames();
        void ABC_FamilyNames();
        void ABC_Gender();
        void ABC_BirthDay();
    }
    
    
    
    ***IMPLEMENTATION CLASSES***:
    
    **ABC_FamilyGivenName**
    public class ABC_FamilyGivenName extends Base implements Common {
    
        public void ABC_GivenNames(){
            // Implementation code
        }
    
        public void ABC_FamilyNames(){
            // Implementation code
        }
    }
    
    **ABC_DOBGender**
    public class ABC_DOBGender extends Base implements Common {
    
        public void ABC_Gender(){
            // Implementation code
        }
    
        public void ABC_BirthDay(){
            // Implementation code
        }
    }
    
    
    
    **USE IMPLEMENTED CLASS IN CODE**:
    public class Application extends Base {
    
        Common commonClass = new ABC_FamilyGivenName();
        /* *DO I NEED THIS? I THINK I DO, BUT CODE/JAVA SAYS I DO NOT*
         * Common commonClass = new ABC_DOBGender();
         */
    
        public void ELP_C0050_PassportDetails(){
            commonClass.ABC_GivenNames();
            commonClass.ABC_FamilyNames();
            commonClass.ABC_DOB();
            commonClass.ABC_Gender();
        }
    }
    

0 个答案:

没有答案