Java中的class.method和object.method有什么区别,它的缺点和优点是什么

时间:2014-07-04 13:55:49

标签: java swing jpanel

OneClass.addComponentsToPane(onePanel);
pane.add(onePanel,c);

TwoClass two=new TwoClass();
two.addComponentsToPane(twoPanel);
pane.add(twoPanel,c);

1)class.method和object.method都有效,但有什么区别和(优点和缺点?)我们必须同时使用

2)需要静态变量和方法以及应避免的地方。

3 个答案:

答案 0 :(得分:1)

通常,如果您的方法或变量与类的特定实例无关,则使用static。

假设你有类羊和这个类的一些对象。您可以使用静态int变量来计算所有绵羊。因此,您可以将静态变量视为与类相关的内容(例如,其实例的数量),而不是该类的特定对象。

当谈到方法时,它是相似的,例如: class Math有许多静态方法,因为当你进行计算时它与任何特定对象无关,结果只依赖于参数。

使用static的一个原因是当你想要在应用程序中全局使用某些值或方法时。

答案 1 :(得分:0)

类方法(静态)对类本身执行操作,这意味着整个JVM中只能有一个实例受到影响(除了一些无关的,无关紧要的情况)>

实例方法(非静态)对对象执行操作,这意味着您可以在受影响的JVM中拥有许多实例。

面向对象编程的优良做法是在类方法上使用实例方法。

如果您愿意,可以阅读静态Java tutorials以了解详情。

答案 2 :(得分:0)

实例(对象)方法使用类的实例,而(静态)方法只能与类名一起使用。
通常,在创建某种数据模型对象和该模型上的操作时,您将使用实例方法,而您将使用静态方法,就像在函数式编程范式语言中一样。