以下哪一项是调用用户定义类中的方法的更好的java编程实践?

以下哪一项是调用用户定义类中的方法的更好的java编程实践?,java,Java,或 注意:这里的堆栈是一个用户定义的类,用于在java中手动实现堆栈的概念,而不是预定义的堆栈。这允许有多个堆栈用于不同的目的 Stack.push(0); 使用此选项时,我们只能有一个堆栈 Stack newStack = new Stack(); newStack.push(0); 我更喜欢第一种方法,因为它允许同时初始化多个堆栈,而第二种方法无法做到。在第一个示例中,push是Stack类的非静态方法。要使用push方法,必须创建堆栈类的实例 Stack.push(0); new S


注意:这里的堆栈是一个用户定义的类,用于在java中手动实现堆栈的概念,而不是预定义的堆栈。

这允许有多个堆栈用于不同的目的

Stack.push(0);
使用此选项时,我们只能有一个堆栈

Stack newStack = new Stack();
newStack.push(0);

我更喜欢第一种方法,因为它允许同时初始化多个堆栈,而第二种方法无法做到。

在第一个示例中,
push
Stack
类的非静态方法。要使用
push
方法,必须创建
堆栈
类的实例

Stack.push(0);
new Stack().push(0);
具有匿名实例的等效代码为:

Stack newStack = new Stack();
newStack.push(0);
在这种情况下,这将是无用的,因为您最终会想要
pop
您创建的堆栈

在第二个示例中,
push
堆栈
类的静态方法

Stack.push(0);
new Stack().push(0);
Nandu Raj的回答是正确的,因为您的应用程序中只能有一个
堆栈
,而不是使用非静态
push
方法的多个堆栈


创建和使用非静态方法通常是一种更好的编程实践,尽管在某些情况下,如Java
Math
类,静态方法工作得更好。

这是否回答了您的问题?如果不是真的,则搜索更多。另一方面,如果给出了
Stack
的设计,并且
push
是一种静态方法,那么
Stack.push(0)
显然是最清晰、最简洁的首选。