为什么java中的静态变量和方法直接调用?

时间:2013-08-14 14:20:43

标签: java static

为什么直接调用静态变量而不在java中使用对象?它们是否存储在不同的内存位置?为什么只有静态方法可以直接调用类的名称而不创建其对象?例如

class First
{
   public static void ss()
   {
     System.out.println("This genius will give answer");
   }
}

class Second
{
    public static void main(String ar[])
    {
       First.ss(); 

    }
}

2 个答案:

答案 0 :(得分:1)

是静态资源属于类而不是对象。并存储在global位置的单独位置。您可以阅读更多here

答案 1 :(得分:1)

As docs says

  

该类的每个实例共享一个类变量,该变量位于内存中的一个固定位置。

     

Java编程语言支持静态方法和静态变量。静态方法在其声明中具有静态修饰符,应使用类名调用,而无需创建类的实例,如

ClassName.methodName(args)