Tom_Hanck
2011-09-03 11:22 阅读 356
已采纳

初学java遇到无法从静态上下文中引用非静态变量错误

public class Persion1
{
    class Persion
    {
        int id;
        int age=20;
        Persion(){};
        Persion(int _id,int _age)
        {
            id=_id;
            age=_age;
        }
    }
    class Dog 
    {
        int id;
        int age;
        int get_id()
        {
            return id;
        }
        int get_age()
        {
            return age;
        } 
    }
    Persion Tom=new Persion();
    Persion Jim=new Persion(2,15);
    Dog dog=new Dog();
    public static void main(String[] args)
    {
        System.out.println(Tom.id);
        System.out.println(Tom.age);
        System.out.println(Jim.id);
        System.out.println(Jim.age);
        System.out.println(dog.id);
        System.out.println(dog.age);
    }
}
编译的时候总是提示下面的错误,请各位大大指导一下,该如何修改
Persion1.java:32: 无法从静态上下文中引用非静态 变量 Tom
                System.out.println(Tom.id);
                                   ^
Persion1.java:33: 无法从静态上下文中引用非静态 变量 Tom
                System.out.println(Tom.age);
                                   ^
Persion1.java:34: 无法从静态上下文中引用非静态 变量 Jim
                System.out.println(Jim.id);
                                   ^
Persion1.java:35: 无法从静态上下文中引用非静态 变量 Jim
                System.out.println(Jim.age);
                                   ^
Persion1.java:36: 无法从静态上下文中引用非静态 变量 dog
                System.out.println(dog.id);
                                   ^
Persion1.java:37: 无法从静态上下文中引用非静态 变量 dog
                System.out.println(dog.age);
遇到这样的问题,原因在哪里呢?希望各位高手不吝指导一下菜鸟!
  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

1条回答 默认 最新

  • 已采纳
    hareamao hareamao 2011-09-03 11:51

    真是新手,没法评价

    [code="java"]public class Personal

    {

    static class Person

    {

    int id;

    int age=20;

    Person(){}

    Person(int _id, int _age)

    {

    id=_id;

    age=_age;

    }

    }

    static class Dog

    {

    int id;

    int age;

    int get_id()

    {

    return id;

    }

    int get_age()

    {

    return age;

    }

    }

    static Person tom =new Person();  
    static Person jim =new Person(2,15);  
    static Dog dog=new Dog();  
    public static void main(String[] args)  
    {  
        System.out.println(tom.id);  
        System.out.println(tom.age);  
        System.out.println(jim.id);  
        System.out.println(jim.age);  
        System.out.println(dog.id);  
        System.out.println(dog.age);  
    }  
    

    } [/code]

    点赞 评论 复制链接分享

相关推荐