菜鸟求救!(non-static variable this cannot be referenced from a static context)

liuqiongliu 2003-04-01 09:59:21
public class CarDemo
{
public static void main(String[] args)
{
Car Democar= new Car();
Democar.set_number(3838);
Democar.show_number();
}

class Car
{
int car_number;

void set_number(int car_num)
{
car_number=car_num;
}

void show_number()
{
System.out.println("My car No. is:"+car_number);
}
}
}


出现错误:non-static variable this cannot be referenced from a static context
Car Democar= new Car();
...全文
218 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
rhj_2001 2003-04-01
  • 打赏
  • 举报
回复
把Car改成静态类也可。
jxspace 2003-04-01
  • 打赏
  • 举报
回复
Car被定义成CarDemo中的内部类,在静态方法main里头,无法调用CarDemo中定义的成员,尽管这个成员是一个类。你可以这样:
public class CarDemo
{
public static void main(String[] args)
{
//Car Democar= new Car();
//Democar.set_number(3838);
//Democar.show_number();
Cardemo d=new CardDemo();
d.useCar();
}

public void useCar(){
Car c=new Car();
c.set_number(03838);
c.shown_number();
}

class Car
{
int car_number;

void set_number(int car_num)
{
car_number=car_num;
}

void show_number()
{
System.out.println("My car No. is:"+car_number);
}
}
}

nirvana_hg 2003-04-01
  • 打赏
  • 举报
回复
解决办法一:不要把Car做成内部类即可
办法二:CarDemo.Car Democar= new CarDemo().new Car();

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧