黑马程序员技术交流社区

标题: 关于多态引用的问题!求大神帮助 [打印本页]

作者: a8851625    时间: 2014-10-16 02:03
标题: 关于多态引用的问题!求大神帮助
abstract class Student
{
        public abstract void study();
        public void sleep()
        {
                System.out.println("躺着睡");
        }
}

class BaseStudent extends Student
{
        public void study()
        {
                System.out.println("base study");
        }
        public void sleep()
        {
                System.out.println("坐着睡");
        }

}

class AdvStudent extends Student
{
        public void study()
        {
                System.out.println("Adv study");
        }
}

class DoStudent
{
        public void doSome(Student stu);
        {
               
                stu.study();           //就是对这个地方不理解啊。
                stu.sleep();          //我看毕老师的编译能通过,我编译就提示doSome缺少方法主体,或声明抽象。还有就是这个工具类我也不太懂他的意思!
        }
}


class DuoTaiDemo3
{
        public static void main(String[] args)
        {
                DoStudent ds=new DoStudent();
                ds.doSome(new BaseStudent());


                //BaseStudent bs=new BaseStudet();
                //bs.study();
                //bs.sleep();
                //AdvStudent as=new AdvStudent();
                //as.study();
                //as.sleep();
               
        }
        
}

作者: jacoblx    时间: 2014-10-16 03:10
兄弟,你多加了个分号

        public void doSome(Student stu);  <----------------这里多了分号
        {
               
                stu.study();           //就是对这个地方不理解啊。
作者: HM2014nuli    时间: 2014-10-16 07:47
public void doSome(Student stu); {stu.study();           //就是对这个地方不理解啊}在这里多了个分号,所以提示doSome没有方法主体
作者: Eric1225    时间: 2014-10-16 08:08
代码编写的疏忽,以后得多多注意了
作者: a8851625    时间: 2014-10-16 13:36
多谢各位指点啊,晕,一天看太久了脑子混了。。。竟然犯这种错误。。。!!!!
以后会注意的,多谢各位了!
作者: liu951753xz    时间: 2014-10-16 14:59
这个是多态的,至于错误,楼上兄弟们的都给你指出了。工具类的目的是让你传一个Student类型的引用进去,让该类对象做具体的事儿,也就是让具体的对象,要么是AdvStudent的具体对象,要么是BaseStudent的具体对象,多态不怎么好理解,兄弟,加油




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