在Java中返回数组的方法可以是私有的吗?

时间:2016-05-17 08:50:54

标签: java arrays methods static

我读了一本Java教科书,我有一个问题。

语法

public static Base_Type[] Method_Name(Parameter_List)
{
   Base_Type[] temp = new Base_Type[Array_Size];
   *Statements_To_Fill_Array*
   return temp;
}

这本书说“方法不一定是静态的,不需要公开。”

为什么呢?你能解释为什么这个方法不需要是静态的还是公开的?

我想知道使返回数组方法成为公共静态方法的优点或缺点。

2 个答案:

答案 0 :(得分:3)

  1. 只有在声明的类中使用方法时,才能将其设为私有。如果你从另一个对象中调用它,那么你必须将它公开/保护。

  2. 当方法不使用自己的类变量时,应该使方法成为静态。如果一个类有公共和静态方法,那对我来说就是代码味道。我会在只包含静态方法的类中提取静态方法

答案 1 :(得分:0)

看起来这个方法应该只在你的类中使用。

1)我们只在方法在类声明之外调用时才公开方法。

2)当我们想要在不创建类的对象的情况下调用方法时,我们将方法设为静态。

当然,如果你愿意,你可以将任何方法设为公共或静态,但这会违反主要的OOP原则。