![](https://lstatic.shangxueba.com/jiandati/pc/images/pc_jdt_tittleico.png)
课堂练习:设计猫类,刻画猫的名字,颜色,体重。给猫类提供构造方法,和设置与获取各项成员变量的方法, 在主类中测试
![](https://lstatic.shangxueba.com/jiandati/pc/images/jdt_panel_vip.png)
(1)创建一个员工类Employee Employee要求: 成员变量:员工姓名(private String name) 员工工号(private int id) 员工工资(private int wage) 成员方法: 1、 员工工作 public abstract void work(); 2、员工获得工资public abstract void getFullWage(); 构造方法: 1、无参的构造方法 2、有参的构造方法,初始化成员变量。 (2)继承员工类编写一个经理类Manager Manager要求: 成员变量:增加一个成员变量:奖金:int reward;(经理的工资由两部分组成:基本工资+奖金) 成员方法:员工工作 --- work() 这个方法要求输出: 该员工的名字+“经理在认真工作”。 员工获得工资--- getFullWage () 这个方法要求输出: 该员工的名字+“经理的奖金是”+reward奖金+“,他的总工资是”+(wage基本工资+reward奖金); 构造方法:通过调用父类的构造方法来给部分成员变量进行赋值(super)。 (3)继承员工类编写一个普通员工类Commoner Commoner的要求: 成员方法:员工工作 --- work() 这个方法要求输出: 该员工的名字+“这个普通员工在认真工作”。 员工获得工资--- getFullWage() 这个方法要求输出: 该员工的名字+他的工资 构造方法:通过调用父类的构造方法(super),来给成员变量进行赋值。 创建一个测试类Test Test要求: 1. 创建一个普通员工 c 2. 创建一个经理 m 3. 采用多态的方式分别调用经理、普通员工的work()和getFullWage ()方法。输出 4. 输出学号和姓名
实验要求: 编写类1,2,4。在测试类里完成3,5。写上机实验报告,给出思考题答案。 实验内容: 1) 设计一个表示二维平面上点的类Point, 功能要求: l 包含有表示坐标位置的成员变量x和y l 一个构造方法:Point(int x,int y) l 获取x 和y值的public方法:int getX()和int getY() 2) 设计一个表示二维平面上圆的类Circle,它继承类Point, 功能要求: l 包含有表示圆半径的private类型的成员变量r l 两个构造方法:Circle(int r,int x,int y)和Circle(),无参构造方法要给x,y,r都赋给初值0 n 注意:需要使用super关键字调用父类构造方法 n 思考:为什么必须调用父类构造方法? l 获取和设置r值的public方法:int getR()和void set(int r) l 计算圆面积的public方法:double area(int r) l 增加一个和Point类同名的成员变量x,和一个方法void disp (),请在该方法里实现对Point类中成员变量x的访问。 n 思考:super关键字的用法有哪些? 3) 建立若两个Circle对象c1,c2,建立一个Point的对象p。 l 输出对象c1和c2的轴心位置坐标、半径和面积的值 l 通过c1对象访问Point类中成员变量x l 用变量p引用Circle对象c1,测试一下p能引用的成员 n 思考:父类的引用去引用子类对象时,能访问的成员有哪些? 有余力的同学可以完成下2题:(加分20) 4) 设计一个表示圆柱体的类Cylinder,它继承自类Circle, 功能要求: l 包含有表示圆柱体高的private类型的成员变量h l 构造方法:Cylinder(int h,int r,int x,int y) l 获取和设置h值的public方法 l 计算圆柱体体积的public方法 double volume(int h) l 重写从Circle类中继承来的void disp ()方法,功能是打印出h和圆柱体的体积 5) 编写一个Cylinder对象,调用所有能调用的方法,查看结果
为了保护您的账号安全,请在“简答题”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!