【Java】【基础篇】day07:继承、抽象类与接口

前言

本期任务:毕向东老师Java视频教程学习笔记(共计25天)


代码

/*
假如我们在开发一个系统时需要对员工进行建模,员工包括3个属性:姓名、工号、工资。
经理也是员工,除了含有员工的属性之外,另外还有一个奖金属性。
请使用继承的思想设计出员工类和经理类。要求类中提供必要方法进行属性访问。

员工类:name id pay

经理类:继承了员工,并由自己特有的bonus

*/


abstract class Employee {
    private String name;
    private String id;
    private double pay;

    Employee(String name, String id, double pay) {
        this.name = name;
        this.id = id;
        this.pay = pay;
    }

    public abstract void work();

}

class Manager extends Employee {
    private int bonus;

    Manager(String name, String id, double pay, int bonus) {
        super(name, id, pay);
        this.bonus = bonus;
    }

    public void work() {
        System.out.println("manager work");
    }

}

/*
需求:获取一段程序运行时间
思路:获取程序开始和结束的时间并相减即可

获取时间:System.currentTimeMillis();
*/

abstract class GetTime {
    public final void getTime() {
        long start = System.currentTimeMillis();
        runcode();
        long end = System.currentTimeMillis();
        System.out.println("毫秒:" + (end - start));
    }

    public abstract void runcode();

}

class SubTime extends GetTime {
    public void runcode() {
        for (int x = 0; x < 10000; x++) {
            System.out.println(x);
        }
    }
}


public class TemplateDemo {
    public static void main(String[] args) {
        SubTime st = new SubTime();
        st.getTime();
    }
}

abstract class Student {
    abstract void study();  // 必备功能

    void sleep() {
        System.out.println("sleep");
    }
}

interface Smoking {
    void smoke(); // 扩展功能
}

class ZhangSan extends Student implements Smoking {
    void study() {
    }

    public void smoke() {
    }
}
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值