2017-04-08 79 views
0

我只是试图声明在不同的访问说明符的Java类的主要方法内的字段..但我不能声明具有访问说明符的字段作为公共,任何原因呢?为什么我们不能在Java中的主要方法中声明字段为public?

+0

首先想到 - 你为什么要这么做,你会做什么?既然你知道方法的局部变量只能在同一个方法中可见,即使你可以命名'public'或类似的东西,它会对变量和程序有什么影响?答:无论如何,所以Java不会让你这样做。 –

回答

1

的访问说明是为classfields。您使用访问说明符来定义如何从外部访问这些字段。但方法中声明的变量是local variables。这些局部变量不能在这个方法块之外访问。所以没有理由为他们使用访问说明符。

1

您不能在方法内定义一个公共元素。该元素在方法正在执行时存在,并且不能在此主方法之外访问。

1

方法中的字段对于方法来说是局部的,因此没有访问修饰符。

访问改性剂在类级即

public class Person { 

    private String name 

    public String getName() { 
    return this.name 
    } 

} 
1

局部变量施加不能是公共的。 公共,私人,proctacted仅用于班级成员。

假设如果有可能这样做,那么你怎样才能从方法或类中访问它。 因此,在成员之前指定范围是没有任何意义的。

0

方法中声明的变量(又称局部变量)只能在方法中访问。该方法返回后,该方法中的所有局部变量变得无法访问。你可以把所有的局部变量看作是private

为何如此呢?

局部变量的目的是在方法执行期间临时存储数据。众所周知,的某个方法,或者返回的方法,或者两者兼有。虽然有一种方法正在开展这项业务,但可能会创建对象来帮助实现该方法。对象存储在变量中。由于这些变量只能帮助该方法完成其工作,所以在该方法完成其工作(返回)后不需要它们。

请参阅?它们是暂时的。从另一个范围访问它们没有意义。

相关问题