无法在 java 中创建 public 静态最终字符串
Can't create a public static final String in java
此代码:
public class CommandPrompt {
public static void main(String[] args) {
public static final String prompt = System.getProperty("user.name")+">";
System.out.println(prompt);
}
}
Returns 这个错误信息:
CommandPrompt.java:5: error: illegal start of expression
public static final String prompt = System.getProperty("user.name")+">";
^
CommandPrompt.java:5: error: illegal start of expression
public static final String prompt = System.getProperty("user.name")+">";
^
CommandPrompt.java:5: error: ';' expected
public static final String prompt = System.getProperty("user.name")+">";
^
3 errors
之前看到public static final String
用过,为什么这里不能用?
说明
您不能在方法中使用 public
和 static
。
两者都为 class 属性保留:public
是一个 访问修饰符 并且 static
声明一个 class 作用域变量。
更正
public class CommandPrompt {
public static void main(String[] args) {
final String prompt = System.getProperty("user.name")+">";
System.out.println(prompt);
}
}
或
public class CommandPrompt {
public static final String prompt = System.getProperty("user.name")+">";
public static void main(String[] args) {
System.out.println(prompt);
}
}
相关问题
- How do I declare a static variable inside the main method ?
您不能在方法中将变量声明为 public
或 static
。删除它们或将其移出方法块以将其变成 field
这是因为你只能在你的 class 中创建 class 级别变量,你不说,而是在方法之外:)
public class CommandPrompt {
public static final String prompt = System.getProperty("user.name")+">";
public static void main(String[] args) {
System.out.println(prompt);
}
}
类似的东西应该有用。See this tutorial for more information
不能在方法中声明静态变量。
应该在class级声明。
请尝试
public class CommandPrompt {
public static String prompt;
public static void main(String[] args) {
prompt=System.getProperty("user.name")+">";
System.out.println(prompt);
}
}
此代码:
public class CommandPrompt {
public static void main(String[] args) {
public static final String prompt = System.getProperty("user.name")+">";
System.out.println(prompt);
}
}
Returns 这个错误信息:
CommandPrompt.java:5: error: illegal start of expression
public static final String prompt = System.getProperty("user.name")+">";
^
CommandPrompt.java:5: error: illegal start of expression
public static final String prompt = System.getProperty("user.name")+">";
^
CommandPrompt.java:5: error: ';' expected
public static final String prompt = System.getProperty("user.name")+">";
^
3 errors
之前看到public static final String
用过,为什么这里不能用?
说明
您不能在方法中使用 public
和 static
。
两者都为 class 属性保留:public
是一个 访问修饰符 并且 static
声明一个 class 作用域变量。
更正
public class CommandPrompt {
public static void main(String[] args) {
final String prompt = System.getProperty("user.name")+">";
System.out.println(prompt);
}
}
或
public class CommandPrompt {
public static final String prompt = System.getProperty("user.name")+">";
public static void main(String[] args) {
System.out.println(prompt);
}
}
相关问题
- How do I declare a static variable inside the main method ?
您不能在方法中将变量声明为 public
或 static
。删除它们或将其移出方法块以将其变成 field
这是因为你只能在你的 class 中创建 class 级别变量,你不说,而是在方法之外:)
public class CommandPrompt {
public static final String prompt = System.getProperty("user.name")+">";
public static void main(String[] args) {
System.out.println(prompt);
}
}
类似的东西应该有用。See this tutorial for more information
不能在方法中声明静态变量。
应该在class级声明。
请尝试
public class CommandPrompt {
public static String prompt;
public static void main(String[] args) {
prompt=System.getProperty("user.name")+">";
System.out.println(prompt);
}
}