问答详情
源自:8-7 Java 中的 static 使用之静态变量

请问这样为什么不行

static String className;

className="JAVA开发一班";

这样当通过类名访问 静态变量的时候就无法输出JAVA开发 一班,但是当改成

static String className="JAVA开发一班";时就可行 请问是为什么呢


提问者:MiaLoo 2016-05-16 12:58

个回答

  • 丿Tomorrow
    2016-05-16 13:56:52
    已采纳

    语法错误,不能先定义后赋值。这样的话static String className ; className="JAVA开发一班"; 系统认为应该是同一个语句,所以不能后赋值。


  • 慕粉粉饼
    2016-05-16 14:15:26

    是可以这样写的。代码如下是可以运行的:

    package com.herry;

    public class test1 {

         static String className;

    public static void main(String[] agrs){

          className = "Java开发一班";

          System.out.println(test1.className);

    }

    }

    不知道你的原因是不是因为static变量没有定义在类中,而是定义在main方法里了。