A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 杨洋 于 2012-7-20 10:05 编辑

class Worker
{
}
class Student
{
}
class Tool
{
    private Object obj;
    public void setobject(Object obj)
    {
        this.obj=obj;
    }
    public Object getObject()
    {
        return obj;
    }
}
class  GenericDemo3
{
    public static void main(String[] args)
    {
        Tool t = new Tool();
        t.setObject(new Worker());
        Worker w = (Worker)t.getObject();
    }
}



代码我对了几遍都一样,就是文件名不一样,为什么我的就报错,怎么更正呢

QQ截图20120720083826.png (2.51 KB, 下载次数: 57)

问题

问题

5 个回复

倒序浏览
这么运行:java GenericDemo3
因为主函数main,也就是程序的入口,在 GenericDemo3类中。
回复 使用道具 举报
文件名写错了。应该是这样的;
   javac GenericDemo3.java
然后按enter键。

1.PNG (5.29 KB, 下载次数: 25)

1.PNG

1.PNG (5.29 KB, 下载次数: 26)

1.PNG
回复 使用道具 举报
class Tool
{
    private Object obj;
    public void setobject(Object obj)  //这里大小写有问题,应该是setObject;
    {
        this.obj=obj;
    }
    public Object getObject()
    {
        return obj;
    }
}
class  GenericDemo3
{
    public static void main(String[] args)
    {
        Tool t = new Tool();
        t.setObject(new Worker());  //上面的方法名错误
        Worker w = (Worker)t.getObject();
    }
}

在编写代码时,大小写对于初学者来说应该特别注意啊,我也经常写错。

回复 使用道具 举报
  1. class  GenericDemo3
  2. {
  3.     public static void main(String[] args)
  4.     {
  5.         Tool t = new Tool();
  6.         t.setObject(new Worker());
  7.         Worker w = (Worker)t.getObject();
  8.     }
  9. }
复制代码
程序的入口主函数在GenericDemo3类中,所以在运行的时候应该输入命令
\>java GenericDemo3

以后命名文件的时候要注意类名和文件名的一致~
回复 使用道具 举报
估计你是用记事本之类的文本编辑工具写的
文件名是question1.java,文件内容中main所在的类是GenericDemo3

主要问题是:文件名要和类名一致,且首字母大写
解决办法:
1.修改文件名为GenericDemo3,或者将文件中的GenericDemo3改为文件名,注意首字母大写,且名称一致
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马