1、根据需求,完成如下代码(只用继承,不用抽象类,按照标准格式写),并在测试类中进行测试。
需求一:
项目经理类
属性:姓名 工号 工资 奖金
行为:工作work(打印姓名、工号、工资、奖金)
程序员类
属性:姓名 工号 工资
行为:工作work(打印姓名、工号、工资)
需求二:
已知学生类和老师类如下:
属性:姓名,年龄
行为:吃饭
老师有特有的方法:讲课
学生有特有的方法:学习
需求三:
已知猫类和狗类:
属性:毛的颜色,腿的个数
行为:吃饭
猫特有行为:抓老鼠catchMouse
狗特有行为:看家lookHome
package practice;
public class Programmer {
private String name;
private int jobNumber;//属性私有,通过公有方法访问
private double salary;
public Programmer(){
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getJobNumber() {
return jobNumber;
}
public void setJobNumber(int jobNumber) {
this.jobNumber = jobNumber;
}
public double getSalary() {
return salary;
}
public void setSalary(double salary) {
this.salary = salary;
}
public Programmer(String name,int jobNumber,double salary){
this.name=name;
this.jobNumber=jobNumber;
this.salary=salary;
}
}
package practice;
public class Pm extends Programmer{
private double bonus;
public Pm(String name,int jobNumber,double salary){
super(name, jobNumber, salary);
bonus = 0;
}
public void setBonus(double a){
bonus = a;
}
public double getSalary()
{
double salary = super.getSalary();
return salary + bonus;
}
}
package practice;
public class Cat {
private char color;
private int number;
public char getColor() {
return color;
}
public void setColor(char color) {
this.color = color;
}
public int getNumber() {
return number;
}
public void setNumber(int number) {
this.number = number;
}
public Cat() {
}
Cat(char color,int number){
this.color=color;
this.number=number;
}
public void catchmouse() {
System.out.println("catch mouse");
}
}
package practice;
public class NewStudent extends Teacher{
NewStudent(String name,int age){
super(name,age);
}
public void study() {
System.out.println("studying");
}
}
package practice;
public class Dog extends Cat{
public Dog(char color,int number){
super(color,number);
}
public void lookhome() {
System.out.println("look home");
}
}
package practice;
public class Test{
public static void main(String[] args){//所有程序都是从主程序开始的
Pm boss = new Pm("Austin", 101, 80000);//应用指向自己new出来的这块内存
boss.setBonus(900);
System.out.println("name:"+ boss.getName()+" " + "工号:" +boss.getJobNumber()+" "+"salary="+ boss.getSalary());
programmer L=new programmer("xiaoming",90,1000);
System.out.println("name:" + L.getName()+" " + "工号:"+ L.getJobNumber()+" " +"salary="+ L.getSalary());
Teacher q=new Teacher("张华",23);
System.out.println("name:"+q.getName()+"age:"+q.getAge());
NewStudent w=new NewStudent("laurence",18);
System.out.println("name:" + w.getName()+" "+" age" + w.getAge());
Cat s=new Cat('黄',4);
System.out.println("毛色:"+s.getColor()+" "+"腿数:"+s.getNumber());
s.catchmouse();
Dog u =new Dog('蓝',4);
System.out.println("毛色:"+u.getColor()+" "+"腿数:"+u.getNumber());
u.lookhome();
}
}