为了账号安全,请及时绑定邮箱和手机立即绑定

在输出男女时,我把变量定义到main函数外面,实现不了打印,这是怎么回事?

public class HelloWorld {
final String SEX1="男";
final String SEX2="女";
public static void main(String args[]){
System.out.println(SEX1);
System.out.println(SEX2);
}


}


正在回答

4 回答

因为main方法是静态方法,如果非静态变量和方法在main函数中调用时只能生成对象,调用对象的方法,

即  HelloWorld helloworld=new HelloWorld(); 

hellworld.SEX1,

hellworld.SEX2,

或者将变量和方法定义为静态的 

static final String SEX1="男";

static final String SEX2="女";

这样就可以直接在main函数中调用

2 回复 有任何疑惑可以回复我~
#1

cooldamon 提问者

说的很好,我突然短路了,只有对象才能调用属性呀!!!!!
2015-12-21 回复 有任何疑惑可以回复我~
#2

kz_java

看你SEX1和EX2后面用的是逗号??HelloWorld helloworld=new HelloWorld(); hellworld.SEX1, hellworld.SEX2 这一部分内容加在哪呢?main里还是外?
2016-01-06 回复 有任何疑惑可以回复我~
#3

weirdguy 回复 kz_java

那个后面应该是分号; 我写的时候没注意 不好意思 那一块应该放到main函数里面
2016-01-10 回复 有任何疑惑可以回复我~

public class 定义常量 {
 public static void main(String[] args){
  final char A='男';
  final char B='女';
  System.out.println(A);
  System.out.println(B);
 }
}

0 回复 有任何疑惑可以回复我~

HelloWorld hello=new HelloWorld();

然后输出hello.SEX1

0 回复 有任何疑惑可以回复我~

我是新手,Final  关键字是什么意思啊?

0 回复 有任何疑惑可以回复我~
#1

cooldamon 提问者

这个是不可变吧,修饰变量表示常量,修饰方法表示不能重写。
2015-12-21 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

在输出男女时,我把变量定义到main函数外面,实现不了打印,这是怎么回事?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信