package day04;
abstract class Animal {
public abstract void bellow();
}
class Dog extends Animal {
public void bellow() {
System.out.println("汪汪汪...");
}
}
class Cat extends Animal {
public void bellow() {
System.out.println("喵喵喵...");
}
}
public class Demo2 {
public static void main(String[] args) {
Dog dog = new Dog();
bellow(dog);
Cat cat = new Cat();
bellow(cat);
}
public static void bellow(Animal animal) {
animal.bellow();
}
}
package day04;
abstract class Employee {
private String name;
private int id;
private int salary;
public Employee(String name, int id, int salary) {
this.name = name;
this.id = id;
this.salary = salary;
}
abstract public void doWork(String msg);
public void printMsg() {
System.out.println("name:" + name + " id:" + id + " salary:" + salary);
}
}
class Programmer extends Employee {
public Programmer(String name, int id, int salary) {
super(name, id, salary);
}
public void doWork(String msg) {
System.out.println("程序员正在敲代码" + msg);
}
}
class Manager extends Employee {
public Manager(String name, int id, int salary, int bonus) {
super(name, id, salary);
this.bonus = bonus;
}
private int bonus;
public void printMsg() {
super.printMsg();
System.out.print("bonus:" + bonus);
}
public void doWork(String msg) {
System.out.println("项目经理正在" + msg);
}
}
public class Demo4 {
public static void main(String[] args) {
Programmer p1 = new Programmer("小李", 12, 3000);
p1.doWork("coding中");
p1.printMsg();
Manager m1 = new Manager("小王", 13, 6000, 40000);
m1.doWork("谈项目中");
m1.printMsg();
}
}