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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

/**
需求:用抽象类的形式把下面的内容代码化
          具体事物:基本班学员,就业班学员
          共性:姓名,学习,休假
          思路:基础班学员和就业班学员可以抽象为学员类。
          学员共有的属性:姓名。
          基础班和就业班学员学习内容不同,所以需要定义抽象方法,因此学员类必须为抽象类。又因为学员休假方法不是共性,
          定义一个休假接口供学员来实现休假。
*/
/**休假*/
interface XiuJia
{
        public abstract void xiuJia();
}
/**学员类*/
abstract class Student1
{
        private String name;
        /**无参构造*/
        public Student1(){
                return;
        }
        public abstract void study();
        /**设置姓名*/
        public void setName(String name){
                this.name = name;
                return;
        }
        /**获取姓名*/
        public String getName(){
                return name;
        }
}
/**基础班学员*/
class BaseStudent extends Student1 implements XiuJia
{
        /**无参构造*/
        public BaseStudent(){
                return;
        }
        /**方法重写*/
        public void study(){
                System.out.println("学习JavaSE");
        }
        /**方法重写*/
        public void xiuJia(){
                System.out.print("休假");
        }
}
/**就业班学员*/
class WorkStudent extends Student1 implements XiuJia
{
        /**无参构造*/
        public WorkStudent(){
                return;
        }
        /**方法重写*/
        public void study(){
                System.out.println("学习Android开发");
        }
        public void xiuJia(){
                System.out.println("没有休假");
        }
}
/**测试类*/
class Student1Test
{
        public static void main(String[] args){
                Student1 s = new BaseStudent();
                BaseStudent bs = (BaseStudent) s;
                bs.setName("基础班学员张三");
                System.out.println(bs.getName());
                bs.study();
                bs.xiuJia();
                System.out.println();
                System.out.println("------------");
                Student1 s1 = new WorkStudent();
                WorkStudent ws = (WorkStudent) s1;
                ws.setName("就业班学员李四");
                System.out.println(ws.getName());
                ws.study();
                ws.xiuJia();
        }
}

8 个回复

倒序浏览
顶 清晰条理   学习了
回复 使用道具 举报
呵呵,习惯不错
回复 使用道具 举报
顶楼主,注释明确详细,是好代码必备条件
回复 使用道具 举报
a804876583 来自手机 中级黑马 2015-9-6 21:38:26
报纸
学习了~~~~
回复 使用道具 举报
真深入,注释就三种方法都给你敲了这么多代码。。。
回复 使用道具 举报
谢谢分享
回复 使用道具 举报
我的注释比较繁琐,,,现在正在学着变简练一些
回复 使用道具 举报
顶  加深了注释印象 赞
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马