Java 从另一个类文件向类添加方法

Java 从另一个类文件向类添加方法,java,class,Java,Class,可以用Java编写这种代码吗?我有一个原始的java文件名ClassA,但我不想在其中乱放太多东西。所以我创建了另一个ClassB.java来输入要在ClassA.java中调用的新方法 public class ClassA implements XYZ{ public ClassA() { Abc(); } } ClassA.java public class ClassA implements XYZ{

可以用Java编写这种代码吗?我有一个原始的java文件名ClassA,但我不想在其中乱放太多东西。所以我创建了另一个ClassB.java来输入要在ClassA.java中调用的新方法

public class ClassA implements XYZ{

        public ClassA() {

            Abc();
        }
    }
ClassA.java

public class ClassA implements XYZ{

        public ClassA() {

            Abc();
        }
    }
ClassB.java

    public class ClassB {

        public ClassB Abc{
        }

    }

如果您希望ClassB具有ClassA功能,您应该通过继承或组合来增强ClassB。例如:

继承:

public class ClassB extends ClassA {
  // now can use or override ClassA methods.
} 
组成:

public class ClassB {
  private ClassA classA = new ClassA();

  // now we can use classA instance throughout this class
}
一般来说,我倾向于组合而不是继承。组合的一个示例是为类提供一个Scanner或ArrayList对象,并在类的方法中使用Scanner或ArrayList。如您所见,除非在非常特殊的情况下,否则尝试让您的类扩展这两个实体中的任何一个都是没有意义的


否则,您的问题仍然很不清楚,如果您仍然有问题,需要我们的帮助,您最好给出您试图实现的具体示例。

虽然您的代码完全不清楚,但我觉得您需要这个

public class ClassB extends ClassA{
super.Abc(); //calls parent class method
}

您可以在ClassA变量中声明另一件事情,以访问ClassB中的方法和属性,如下所示:

public ClassA() {
    ClassB classB = new ClassB();
    classB.Abc();
}


你的问题对我来说毫无意义。请澄清。如果您想直接使用ClassA的方法,为什么不扩展它呢?或者使用组合来使用它的功能。
公共类ClassB扩展ClassA
…?整个情况是这样的,ClassA.java只调用ClassB.java中的方法。请阅读,我不确定您想要实现什么。如果您担心破坏类,那么编写单元测试将有助于减少逻辑上的倒退。如果您想声明
ClassB
ClassA
,那么继承是可以接受的。你能更明确地说明你的意图吗?现在,它们没有什么意义。
public ClassA() {
    new ClassB().Abc();
}