我的朋友刚开始学习编程。他说他的代码有问题,并在Skype上分享了他的屏幕。我发现他实例化了Main类以使用所有函数等。它看起来像这样:
public static void main(String[] args) {
Main main = new Main();
main.Example();
}
我在一些在线教程中也注意到了这一点。问题是,既然你不应该有多个主函数,为什么要实例化它?
我的朋友刚开始学习编程。他说他的代码有问题,并在Skype上分享了他的屏幕。我发现他实例化了Main类以使用所有函数等。它看起来像这样:
public static void main(String[] args) {
Main main = new Main();
main.Example();
}
我在一些在线教程中也注意到了这一点。问题是,既然你不应该有多个主函数,为什么要实例化它?
你可以认为这样做更好。
你应该不要有一个名为Main
的类,而是使用一个具有适当面向对象的目的的类来封装某些内容。
main
方法必须位于其中一个类中,但这并不意味着容纳main
方法的可怜类不允许被实例化。
在纯粹的面向对象编程中,根本没有static
的位置。甚至连实用类都没有:http://www.yegor256.com/2014/05/05/oop-alternative-to-utility-classes.html
Main
类。不是public static void main()
方法!!!static
类或方法。static
方法(如main
方法)中访问non-static
变量或方法。因此,做法是创建该类本身的一个实例并使用non-static
变量或方法。 Main main = new Main(); //creates object of class Main
main.Example(); //calls method Example from object main
main.Example()
调用将执行许多其他操作。这些其他操作可能包括访问 Main 对象的其他实例变量或实例方法。 - Doug Richardson