当前位置: 首页 > news >正文

java基础-继承练习

1、

学生信息和行为(名称,年龄,所在班级,查看课表,填写听课反馈fillForm)

​ 老师信息和行为(名称,年龄,部门名称,查看课表,发布问题publishForm)

​ 定义角色类作为父类包含属性(名称,年龄),行为(查看课表)

​ 定义子类:学生类包含属性(所在班级),行为(填写听课反馈)

​ 定义子类:老师类包含属性(部门名称),行为(发布问题)

package com.jdL.day13homework.question2;public class Role {private String name;private int age;//空参public Role(){}//有参public Role(String name,int age){this.name=name;this.age=age;}//行为public String getName() {return name;}public void setName(String name) {this.name = name;}public int getClassNumber() {return age;}public void setClassNumber(int age) {this.age = age;}//行为public void lookClass(){System.out.println("查看课表");}
}
package com.jdL.day13homework.question2;import com.jdL.day13classwork.Employee;public class Student extends Employee {private String classroom;//空参public Student() {}//有参public Student(String number, String name, String classroom) {super(name,number);this.classroom=classroom;}public String getClassroom() {return classroom;}public void setClassroom(String classroom) {this.classroom = classroom;}//行为public void fillForm(){System.out.println("填写听课反馈");}
}
package com.jdL.day13homework.question2;public class Teacher extends Role{private String departmentName;public Teacher() {}public Teacher(String name,int age,String departmentName) {super(name,age);this.departmentName = departmentName;}public String getDepartmentName() {return departmentName;}public void setDepartmentName(String departmentName) {this.departmentName = departmentName;}//行为public void publishForm(){System.out.println("发布问题");}
}

2、

完成代码(按照标准格式写),然后在测试类中测试。

​ 1.手机类Phone

​ 属性:品牌brand,价格price

​ 无参构造,有参构造

​ 行为:打电话call,发短信sendMessage,玩游戏playGame

​ 2.测试类

​ 创建Phone类对象,调用Phone类中的方法

思考:

​ 假设所有的手机都有属性屏幕的尺寸(int size),而且假设所有手机的屏幕尺寸为6,应该如何实现?

package com.jdL.day13homework.question3;public class Phone {private String brand;private double price;private static  int size=6;//空参public Phone() {}//有参public Phone(String brand, double price) {this.brand = brand;this.price = price;}//get和set方法public String getBrand() {return brand;}public void setBrand(String brand) {this.brand = brand;}public double getPrice() {return price;}public void setPrice(double price) {this.price = price;}public int getSize() {return size;}public void setSize(int size) {this.size = size;}//行为public void call(){System.out.println("打电话");}public void sendMessage(){System.out.println("发短信");}public void playGame(){System.out.println("打游戏");}
}
package com.jdL.day13homework.question3;public class PhoneTest {public static void main(String[] args) {Phone phone = new Phone("小米",1666);System.out.println(phone.getBrand()+","+phone.getPrice()+","+phone.getSize());phone.call();phone.sendMessage();phone.playGame();}
}

3、

分析以下需求,并用代码实现

​ 1.定义Person类

​ 属性:

​ 姓名name、性别gender、年龄age、国籍nationality;

​ 方法:

​ 吃饭eat、睡觉sleep,工作work。

​ 2.根据人类,创建一个学生类Student

​ 增加属性:

​ 学校school、学号stuNumber;

​ 重写工作方法(学生的工作是学习)。

​ 3.根据人类,创建一个工人类Worker

​ 增加属性:

​ 单位unit、工龄workAge;

​ 重写工作方法(工人的工作是盖房子)。

​ 4.根据学生类,创建一个学生干部类 StudentLeader

​ 增加属性:

​ 职务job;

​ 增加方法:开会meeting。

​ 5.编写测试类分别对上述3类具体人物进行测试

package com.jdL.day13homework.question4;public class Person {private String name;private char gender;private int age;private String nationality;//空参public Person() {}//有参public Person(String name, char gender, int age, String nationality) {this.name = name;this.gender = gender;this.age = age;this.nationality = nationality;}public String getName() {return name;}public void setName(String name) {this.name = name;}public char getGender() {return gender;}public void setGender(char gender) {this.gender = gender;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}public String getNationality() {return nationality;}public void setNationality(String nationality) {this.nationality = nationality;}//行文public void eat(){System.out.println("吃饭");}public void sleep(){System.out.println("睡觉");}public void work(){System.out.println("工作");}
}
package com.jdL.day13homework.question4;public class Student extends Person{private String school;private String stuNumber;public Student() {}public Student(String name, char gender, int age, String nationality, String school, String stuNumber) {super(name, gender, age, nationality);this.school = school;this.stuNumber = stuNumber;}public String getSchool() {return school;}public void setSchool(String school) {this.school = school;}public String getStuNumber() {return stuNumber;}public void setStuNumber(String stuNumber) {this.stuNumber = stuNumber;}@Overridepublic void work(){System.out.println("学习");}}
package com.jdL.day13homework.question4;import com.jdL.day13classwork.Employee;public class Worker extends Person {private String unit;private int workAge;public Worker() {}public Worker(String name, char gender, int age, String nationality, String unit, int workAge) {super(name, gender, age, nationality);this.unit = unit;this.workAge = workAge;}public String getUnit() {return unit;}public void setUnit(String unit) {this.unit = unit;}public int getWorkAge() {return workAge;}public void setWorkAge(int workAge) {this.workAge = workAge;}@Overridepublic void work(){System.out.println("盖房子");}
}
package com.jdL.day13homework.question4;public class StudentLeader extends Student{private String job;public StudentLeader() {}public StudentLeader(String name, char gender, int age, String nationality, String school, String stuNumber, String job) {super(name, gender, age, nationality, school, stuNumber);this.job = job;}public String getJob() {return job;}public void setJob(String job) {this.job = job;}public void meeting(){System.out.println("开会");}
}
package com.jdL.day13homework.question4;public class PersonTest {public static void main(String[] args) {Student s= new Student("张三",'男',18,"中国","广州白云学院","001");s.work();s.sleep();s.eat();System.out.println(s.getName()+s.getAge()+s.getGender()+s.getNationality());System.out.println("-----------------");Worker w=new Worker("李四",'男',20,"美国","广州越秀学院",2);w.work();w.sleep();w.eat();System.out.println(w.getName()+w.getAge()+w.getGender()+w.getNationality());System.out.println("-------------------------------");StudentLeader leader=new StudentLeader("王五",'男',16,"中国","广州天河学院","002","宣传部长");leader.work();leader.sleep();leader.eat();leader.meeting();System.out.println(leader.getName()+leader.getAge()+leader.getGender()+leader.getNationality());}
}

1.定义项目经理类 属性: 姓名 工号 工资 奖金 行为: 工作work 2.定义程序员类 属性: 姓名 工号 工资 行为: 工作work

​ 3.向上抽取一个父类,让这两个类都继承这个父类,共有的属性写在父类中,子类重写父类中的方法

​ 4.编写测试类:完成这两个类的测试

package com.jdL.day13homework.question5;public class Worker {private String salary;//姓名private String strNUmber;//工号public Worker() {}public Worker(String salary, String strNUmber) {this.salary = salary;this.strNUmber = strNUmber;}public String getsalary() {return salary;}public void setsalary(String salary) {this.salary = salary;}public String getStrNUmber() {return strNUmber;}public void setStrNUmber(String strNUmber) {this.strNUmber = strNUmber;}public void work(){System.out.println("工作");}
}

package com.jdL.day13homework.question5;public class Mannage extends Worker {private double bouns;public Mannage() {}public Mannage(String salary, String strNUmber, double bouns) {super(salary, strNUmber);this.bouns = bouns;}public double getBouns() {return bouns;}public void setBouns(double bouns) {this.bouns = bouns;}@Overridepublic void work(){System.out.println("管理工作");}
}
package com.jdL.day13homework.question5;public class Coder extends Worker{public Coder() {}public Coder(String salary, String strNUmber) {super(salary, strNUmber);}@Overridepublic void work() {System.out.println("代码工作");}
}
package com.jdL.day13homework.question5;public class WorkerTest {public static void main(String[] args) {Mannage mannage = new Mannage("123","222",111);mannage.work();System.out.println(mannage.getBouns()+mannage.getsalary()+mannage.getStrNUmber());System.out.println("--------------");Coder coder = new Coder("23","2");coder.work();System.out.println(coder.getsalary()+coder.getStrNUmber());}
}

根据需求完成代码:

​ 1.定义动物类

​ 属性: 年龄,颜色 行为: eat(String something)方法(无具体行为,不同动物吃的方式和东西不一样,something表示吃的东西)

​ 生成空参有参构造,set和get方法

​ 2.定义狗类继承动物类

​ 行为: eat(String something)方法,看家lookHome方法(无参数)

​ 3.定义猫类继承动物类

​ 行为:

​ eat(String something)方法,逮老鼠catchMouse方法(无参数)

​ 4.定义Person类

​ 属性: 姓名,年龄

​ 行为: keepPet(Dog dog,String something)方法

​ 功能:喂养宠物狗,something表示喂养的东西

​ 该方法调用后打印结果为:颜色为黑色的2岁的狗,在吃骨头

​ 行为: keepPet(Cat cat,String something)方法 功能:喂养宠物猫,something表示喂养的东西

​ 该方法调用后打印结果为:颜色为白色的2岁的猫,在吃小鱼干

​ 5.生成空参有参构造,set和get方法

​ 6.测试以上方法

package com.jdL.day13homework.question6;public class Animals {private int age;private String color;private String name;public Animals() {}public Animals(int age, String color, String name) {this.age = age;this.color = color;this.name = name;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}public String getColor() {return color;}public void setName(String color) {this.color = color;}public String getName() {return name;}public void setColor(String color) {this.color = color;}public String eat(String something){return "正在吃"+something;}
}
package com.jdL.day13homework.question6;import jdk.jfr.Name;public class Dog extends Animals {public Dog() {}public Dog(int age, String color, String name) {super(age, color,name);}@Overridepublic String eat(String something){return "正在吃"+something;}public void lookHome(){}
}
package com.jdL.day13homework.question6;public class Cat extends Animals{public Cat() {}public Cat(int age, String color, String name) {super(age, color,name);}//public String eat(String something){return "正在吃"+something;}
}
package com.jdL.day13homework.question6;public class Person {private String name;private int age;public Person() {}public Person(String name, int age) {this.name = name;this.age = age;}public String getName() {return name;}public void setName(String name) {this.name = name;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}//public void keepPet(Dog dog,String something){System.out.println("颜色为"+dog.getColor()+"的"+dog.getAge()+"岁的"+dog.getName()+dog.eat(something));}public void keepPet(Cat cat,String something){System.out.println("颜色为"+cat.getColor()+"的"+cat.getAge()+"岁的"+cat.getName()+cat.eat(something));}
}
package com.jdL.day13homework.question6;public class MainTest {public static void main(String[] args) {//new一个dog出来Dog dog = new Dog(2,"黑色","狗");//new一个cat出来Cat cat = new Cat(2,"白色","猫");//new一个person出来Person person = new Person();person.keepPet(dog,"骨头");person.keepPet(cat,"小鱼干");}
}

http://www.dtcms.com/a/601314.html

相关文章:

  • 寻花问柳一家专门做男人的网站1534939978姐的微信德惠市
  • 做网站的毕业设计博客网站制作
  • Java应用中,CPU 使用率过高​问题排查(手动用top+jstack或阿里Arthas)
  • k8s的包管理工具(5)--读取文件内容
  • AXI-5.4 Protocol errors
  • 动易网站后台帮人做彩票网站有事吗
  • 购物网站php模板周口市网站建设
  • 装饰公司网站模板下载建设网站的内容及实现方式
  • Kubernetes 学习笔记
  • 【自然语言处理】基于统计基的句子边界检测算法
  • 数据智能开发三 数据架构设计
  • 数据治理进阶——解读数据平台数据治理与建设方案【附全文阅读】
  • 基于OpenAI与DashScope的AI知识面试模拟系统实现
  • 嘉兴市南湖区城乡规划建设局网站做年报的网站怎么登不上去了
  • IntelliJ IDEA 2025.2.4 安装 MybatisX 不生效问题记录
  • Java 大视界 -- Java 大数据机器学习模型在自然语言生成中的可控性研究与应用实战
  • Langchain的LCEL组件
  • 南阳网站建设制作价格网站建设实践试卷
  • T型槽平台:工业制造中的多功能基础工装
  • 展示 Ansys 增材制造解决方案
  • PcVue播客系列 - E2 | 智慧制造、人工智能与工业模拟的未来 —— 对话 Andrew Siprelle
  • 广州广告网站建设图片网站源码
  • 有的app不能通过应用商城更新
  • 价格变化的效率问题
  • 仓颉三方库开发实战:sanitize_html 实现详解
  • 逻辑回归以及python(sklearn)详解
  • RESTful规范
  • 四川高端网站建设女生做网站开发
  • PDF转图片:轻松实现工程图纸的高效共享与高清展示
  • 【ZeroRange WebRTC】ICE 服务器列表解析(KVS WebRTC)