Java's 继承应用实例

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();
	
	}
}

猜你喜欢

转载自blog.csdn.net/weixin_42194284/article/details/90047955