黑马程序员技术交流社区

标题: 求大神看看我的代码哪错了 [打印本页]

作者: 小黑子    时间: 2014-8-7 14:52
标题: 求大神看看我的代码哪错了
本帖最后由 小黑子 于 2014-8-7 15:10 编辑

//需求:老师讲课需要调用电脑,电脑运行,会抛出蓝屏异常
class Computer
{
        int state = 2;
        
        void run() throws LanPingException
        {
                if( state ==2)
                        throw new LanPingException("电脑蓝屏了");
                System.out.println("电脑运行");
        }
}
class LanPingException extends Exception
{
        String message;
        LanPingException(String msg)
        {
                message = msg;
        }
}
class Teacher
{
        String name;
        Computer cmpt;
        Teacher(String name)
        {
                this.name = name;
                Computer cmpt = new Computer();
        }
        
        void prelect()
        {
                try{
                        cmpt.run();  //第34行
                }
                catch(LanPingException e)
                {
                        System.out.println(e.toString());
                }
                System.out.println(name+"@讲课");
        }
}
class ExceptionDemo1
{
        public static void main(String[] args)
        {
                Teacher t = new Teacher("zs");
                t.prelect();  //第48行
                System.out.println("over!");
        }
}
/////////////////////////////////////////////////////////////////////////////////
运行结果如下:
Exception in thread "main" java.lang.NullPointerExcepti
        at Teacher.prelect(ExceptionDemo1.java:34)
        at ExceptionDemo1.main(ExceptionDemo1.java:48)

代码1.png (15.63 KB, 下载次数: 21)

代码1.png

代码2.png (91.88 KB, 下载次数: 37)

代码2.png

运行结果.png (55.26 KB, 下载次数: 10)

运行结果.png

作者: 暗夜星辰    时间: 2014-8-7 15:06
楼主尝试下把 Computer cmpt = new Computer();这句话改成 cmpt = new Computer();因为你这样写,其实是新建了一个对象了。
作者: 小黑子    时间: 2014-8-7 15:09
暗夜星辰 发表于 2014-8-7 15:06
楼主尝试下把 Computer cmpt = new Computer();这句话改成 cmpt = new Computer();因为你这样写,其实是新 ...

原来问题在这啊,谢谢哈。看来这个代码就得多动手敲呀,要不真不行。
作者: 钟伟    时间: 2014-8-7 15:49
看一下学习
作者: Imp_x    时间: 2014-8-7 22:55
我来水金币的{:3_64:}
作者: 我行我SHOW‰    时间: 2014-8-8 01:00
过来学习一下~~~~




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2