0

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

此外,我还阅读了另一篇文章,其中有一个单独的类可能是 'driver.java 仅用于主方法,这是否意味着所有类都必须导入到这个类中才能让我们在主方法中调用其他类的方法?

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

4

2 回答 2

1

让我给你解释一下,

  1. 当您通过调用创建子类的实例时newsub class type然后调用immediatelySuper class constructor is called,并且它保留going tillObject class,这被称为Constructor chaining

  2. 都是instance variabledeclared and initialized这个过程中。

  3. 是当它调用它的子类的构造函数时,most important它会转到它的超类,依此类推,直到 Object 类,然后1st creating the Object class objectthen the class undertill it reaches the subclass on whose class new was called,你会看到constructor of the super class is called first then its subclass's

对于您的上述问题,我还创建了一个示例,该示例与我给出的理论解释相吻合。

例如:

      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");

    }
}
于 2012-06-06T16:21:20.887 回答
0

好吧,我试过了,即使我把 main 方法放在父类中,它也能正常工作。但是我已经做了一些阅读,观察到的做法是在一个单独的类中创建 main 方法,这样该类中只有 main 方法而没有其他方法。这在某些情况下提高了效率,并且是一种更清洁的方式。

于 2012-06-06T16:04:33.840 回答