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使用吗”
java调用类中变量的格式问题
答案:4 悬赏:20
解决时间 2021-02-16 13:34
- 提问者网友:暖心后
- 2021-02-16 06:35
最佳答案
- 二级知识专家网友:duile
- 2021-02-16 07:12
b是在方法中、出了那个方法就无效的、这是变量的作用域的问题、外面的变量可以在里面用、里面的不能再外面用、除非是这样
public class test{
int a=1;
static int b;
void print(){
b=2;
}
public class test{
int a=1;
static int b;
void print(){
b=2;
}
全部回答
- 1楼网友:陪我到地狱流浪
- 2021-02-16 10:14
你先调用所在的类,import login;myclass().getid=new login().nowid;//先在当前的java文件中建立主函数所在类的一个对象,然后就可以通过这个对象调用login下的所有方法和变量了
- 2楼网友:深街酒徒
- 2021-02-16 08:41
a可以在test的静态方法main中使用,
但是a没有注明访问修饰符,默认为default,必须是同一个包才能访问。
所以你在其他包是不能这么做的。
b不可以,因为b不是test的字段。
b只是test的print方法内定义的临时变量。
每次调用print都会构造一次b,print结束b就会无效。
- 3楼网友:输掉的尊严
- 2021-02-16 07:56
System.out.println("a="+x.a); //可以这样使用a吗 可以
System.out.println("b="+x.b); //可以这样使用b吗 不可以
b不是类test的成员变量,只能在printf函数内部访问
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯