| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 483 人关注过本帖
标题:大家帮忙检查一下错在那里
只看楼主 加入收藏
vecomwa
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:63
专家分:138
注 册:2009-9-1
结帖率:90.91%
收藏
 问题点数:0 回复次数:3 
大家帮忙检查一下错在那里
class Animal {
    int id = 0;
    int color = 0;
   
    public void setId(int id){
        this.id = id;
    }
   
    public void setColor(int color) {
        this.color = color;
    }
   
    public int getId() {
        return id;
    }
   
    public int getColor() {
        return color;
    }
}

class dog extends Animal {
    int age = 0;
   
    public void setAge(int age) {
        this.age = age;
    }
   
    public int getAge() {
        return age;
    }
}

public class Dogs{
    public static void main(String[] args) {
        dog m = new dog();
        dog.setId(10001);
        dog.setColor(231);
        dog.setAge(2);
        System.out.println("M ID:" + m.getId());
        System.out.println("M color:" + m.getColor());
        System.out.println("M Age:" + m.getAge());
    }
}

——————————————————————————

编译的时候会出现“无法从静态上下文中应用非静态……”。
搜索更多相关主题的帖子: 检查 
2009-09-19 12:19
迷你龙
Rank: 2
等 级:论坛游民
帖 子:20
专家分:16
注 册:2009-9-13
收藏
得分:0 
dog.setId(10001);
dog.setColor(231);
dog.setAge(2);
就是这几句出错了,setID,setColor,setAge不是静态方法,是不能这样调用的,你的想法应该是
m.setId(10001);
m.setColor(231);
m.setAge(2);
,内存里面没有dog这块区域,你是调用不了里面的东西的,而且,你应经定义了m,为什么有不用呢?你不对m赋值,取出来的都是系统自己初始化的!
2009-09-19 12:30
vecomwa
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:63
专家分:138
注 册:2009-9-1
收藏
得分:0 
谢谢了,这么一说就明白了。我这程序是修改过的,原本new出来的就是dog,结果忘记修改这里。
2009-09-19 12:46
lampeter123
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:54
帖 子:2508
专家分:6424
注 册:2009-1-30
收藏
得分:0 
Class dog //类名要首字母大写

你的优秀和我的人生无关!!!!
    
    我要过的,是属于我自己的生活~~~
2009-09-19 15:01
快速回复:大家帮忙检查一下错在那里
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.018909 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved