Java 主方法可以放在父类中吗?如果是这样,子对象是否可以在主方法中实例化?

Java 主方法可以放在父类中吗?如果是这样,子对象是否可以在主方法中实例化?,java,inheritance,subclass,main-method,Java,Inheritance,Subclass,Main Method,假设我有一个类“Person”和另一个类“Survey”,它扩展了Person,所以Survey是子类,Person是父类。Person是我编写的第一个类,因此现在在那里定义了main方法,因为我有一个子类,我可以从父类的main方法调用子类的方法吗(或者我是否需要继续将主方法转移到继承权中最低级的类,尽管我确信这永远都不是必需的…)?如果是这样,这是否与子类继承父类的属性,但父类不继承子类的任何属性的概念相反?请务必回答。提前感谢 另外,我还读了另一篇文章,文章中有一个单独的类,可能是“dri

假设我有一个类“Person”和另一个类“Survey”,它扩展了Person,所以Survey是子类,Person是父类。Person是我编写的第一个类,因此现在在那里定义了main方法,因为我有一个子类,我可以从父类的main方法调用子类的方法吗(或者我是否需要继续将主方法转移到继承权中最低级的类,尽管我确信这永远都不是必需的…)?如果是这样,这是否与子类继承父类的属性,但父类不继承子类的任何属性的概念相反?请务必回答。提前感谢

另外,我还读了另一篇文章,文章中有一个单独的类,可能是“driver.java”,只用于main方法,那么这是否意味着所有类都必须导入到这个类中,以便我们从main方法中的其他类调用方法


我希望我的问题不要太复杂。

我试过了,即使我把main方法放在父类中,它也能很好地工作。但是我做了一些阅读,观察到的实践是在一个单独的类中创建main方法,这样类中只有main方法,没有其他方法。这提高了有些情况下,这是一种更干净的做事方式。

让我解释一下

  • 当您通过在
    子类类型上调用
    new
    来创建子类的实例时,它的
    超类构造函数立即被调用
    ,并且它一直运行到
    对象类
    ,这称为
    构造函数链接

  • 在此过程中,所有
    实例变量
    都被声明和初始化

  • 最重要的
    是,当它调用的子类的构造函数转到它的超类,依此类推,直到对象类,然后
    首先创建对象类Object
    然后是它下面的类,
    直到它到达其上的新类被调用的子类,你会看到
    构造函数首先调用超类的tor,然后调用其子类的

  • 对于你的上述问题,我还创建了一个与我给出的理论解释相符的例子

    例如:


    不相关,但是一个
    调查
    一个
    人如何
    ?!一般来说,父类应该不知道它的子类。可以有任意数量的子类,具有任意的功能。听起来你好像在问“我如何在不移动任何代码的情况下重新设计代码?”答案是“你不知道”。如果您更改应用程序的工作方式,则需要重新排列代码。如果您更改作为应用程序入口点的类,则需要移动主方法,就这么简单。非常感谢这有助于我理解您的意思。再次感谢您为我澄清这一点。
    
          public class a {
        public static void main(String[] args) {
    
            B b = new B();
            b.go();
        }
    }
    
    class B extends a{
    
    
        public void go(){
    
            System.out.println("hello");
    
        }
    }