java中无法从静态上下文中引用非静态

public class Demo1
{
public static void main(String args[])
{
computer c1;
c1=new computer();
c1.open();
}

class computer
{
String pinpai;
String color;
int cpusize;
int rongliang;

public void open()
{
System.out.println("打开");
}
}
}

第1个回答  2014-07-30
computer 类,如果被像代码中放在Demo1类的{}括号中,就属于动态实例子类,不能放在static静态的main函数中。需要改成静态类的 static class computer{}

computer 类,如果不放在Demo1类的{}括号中,放在Demo1外面,属于同源码文件的非公开类,也可以在main中使用,则需要在main(){}函数后再加一个}结束掉Demo1类
相似回答