中易网

java调用类中变量的格式问题

答案:4  悬赏:20  
解决时间 2021-02-16 13:34
public class test{
int a=1;
void print(){
int b=2;
}
public static void main(String[] args){
test x=new test();
System.out.println("a="+x.a); //可以这样使用a吗
System.out.println("b="+x.b); //可以这样使用b吗
}}
a是在类中定义的,b是在类中的方法中定义的,都可以以x.a来使用吗?为什么?且如何正确使用?

编译发生错误
test.java:9: 错误: 找不到符号
System.out.println("b="+x.b);
^
符号: 变量 b
位置: 类型为test的变量 x
1 个错误
————————————
另:上面写错了,是“都可以以x.a x.b使用吗”
最佳答案
b是在方法中、出了那个方法就无效的、这是变量的作用域的问题、外面的变量可以在里面用、里面的不能再外面用、除非是这样
public class test{
int a=1;
static int b;
void print(){
b=2;
}
全部回答
你先调用所在的类,import login;myclass().getid=new login().nowid;//先在当前的java文件中建立主函数所在类的一个对象,然后就可以通过这个对象调用login下的所有方法和变量了
a可以在test的静态方法main中使用, 但是a没有注明访问修饰符,默认为default,必须是同一个包才能访问。 所以你在其他包是不能这么做的。 b不可以,因为b不是test的字段。 b只是test的print方法内定义的临时变量。 每次调用print都会构造一次b,print结束b就会无效。
System.out.println("a="+x.a); //可以这样使用a吗 可以 System.out.println("b="+x.b); //可以这样使用b吗 不可以 b不是类test的成员变量,只能在printf函数内部访问
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
石家庄西三环到石获北路地道桥的限高是多少米
我做了一个梦,梦到我自己要去很远的地方,一
怎么把名字叫高原翻译为日语啊
客厅开灯就跳闸
为什么大家都爱爱马仕
别克昂科威精英型和领先型有何不同
LOL今晚不能打排位了吗?现在是凌晨1点。
"丁冬"和"叮咚"意思一样吗?
蓝颜知已是什么意思
数学351七年级上册67~68答案
为什么我的手机会自动开流量和wifi,然后下载
有哪些详细的 Fortran95/2003 的入门书籍
日女的烧烤女郎和钢铁烈阳哪个好
He plays football on the weekend对划线部分
我父母从小让我保护视力,很看重这一点。但我
推荐资讯
二胎家庭中,父母最宠哪个
maka怎么把别人的作品改成自己的
寻求历年数学建模优秀论文
武汉风行建材有限公司做驻外销售代表待遇怎么
锦州义县农村户口,女55岁,还能交社保吗
生化pc版的操作方式怎么这么别扭
微信PC版安装不了,求大神指点
万达建筑工程有限公司工会委员会在哪里啊,我
现在中缅边境乱去云南安全吗?
美图手机重启后通讯录里的人都没了 怎么回事
属猴的2016年10月中寻姓崔叫什么最好
迪迦网咖印象店地址在哪,我要去那里办事
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?