Educoder - Java继承和多态之abstract类(1,2)

掌握知识点[1-2]

  • abstract类
  • 类的继承

通关源码[1]

/**
 * Create By 刘鸿涛
 * 2021/12/15 8:38
 */
abstract class Employee{
    String name;
    double salary;
    public abstract void work();
    public abstract void info();
}
class Manager extends Employee{
    String gender;
    public Manager(String name,double a,String s){
        this.name = name;
        this.salary = a;
        this.gender = s;
    }
    public void work(){
        System.out.println("我负责对施工项目实施全过程、全面管理。");
    }

    public void info(){
        System.out.println("姓名:" + name + ",工资:" + salary + ",岗位级别:" + gender);
    }

}

Educoder - Java继承和多态之abstract类(1,2)_第1张图片

通关源码[2]

/**
 * Create By 刘鸿涛
 * 2021/12/15 9:21
 */

// 将 Shape 类改为抽象类
public abstract class Shape {

    public int width; // 几何图形的宽
    public int height; // 几何图形的高

    public Shape(int width, int height) {
        this.width = width;
        this.height = height;
    }

    Shape() {
    }

    // 定义一个抽象方法 area(),返回值类型为 double,计算图形的面积
    abstract double area();

}
// Rectangle 为矩形类,该类继承 Shape 类,并拥有 Shape 类的属性
class Rectangle extends Shape{

    // 定义一个有参构造器
    public Rectangle(int a,int b){
        this.width = a;
        this.height = b;
    }

    // 重写抽象方法 area,计算矩形的面积(高*宽),并将计算结果返回
    public double area(){
        return width * height;
    }
}
// Triangle 为矩形类,该类继承 Shape 类,并拥有 Shape 类的属性
class Triangle extends Shape{

    // 定义一个有参构造器
    Triangle(int a,int b){
//        super(width,height)
        this.width = a;
        this.height = b;
    }
    // 重写抽象方法 area,计算三角形的面积(高\*宽/2),并将计算结果返回
    public double area(){
        return width * height / 2;
    }
}

Educoder - Java继承和多态之abstract类(1,2)_第2张图片

你可能感兴趣的:(Educoder攻略,java,开发语言,后端)