Java面向对象之继承

一:含义

继承比如子类继承自父类,子类具有父类的某些特征,也可以具有自身的特殊属性(即方法重写)。类的继承指在一个现有类(父类)的基础上去构建一个新的类(子类),新的类会自动拥有父类的属性和方法(get set方法)。

    格式为:

                class   子类  extends   父类{

                                                }

二:代码实现

1、有员工类(父类),普通员工类(员工类的子类)和部门经理类(员工类的子类)普通员工工资=单日工资*天数等级;
部门经理工资=1000+单日工资*天数*等级。
2、员工类的属性和方法:单日工资、工作天数、等级:打印工资方法3、子类重写打印工资方法
4、写测试类,输出各类的工资(同时代码验证重写的规则)

 案例实现:

父类Woker:

package gongzi;

public class Woker {
	private int Onedaymoney;
	private int workday;
	private int grade;
				
	public int getOnedaymoney() {
		return Onedaymoney;
	}
	public void setOnedaymoney(int onedaymoney) {
		Onedaymoney = onedaymoney;
	}
	public int getWorkday() {
		return workday;
	}
	public void setWorkday(int workday) {
		this.workday = workday;
	}
	public int getGrade() {
		return grade;
	}
	public void setGrade(int grade) {
		this.grade = grade;
	}
					
	public void dayinway(){
		System.out.println("打印方式为");
	}
	
}

子类一:

package gongzi;

public class ManageWoker extends Woker{
	@Override
	public void dayinway(){
		
		System.out.println("部门经理工资=1000+(单日工资*天数*等级)"+",工资为:"+this.getOnedaymoney()*this.getWorkday()*this.getGrade()+ "+1000");
	}
}

子类二:

package gongzi;

public class Simplewoker extends Woker{
	@Override
	public void dayinway(){
		System.out.println("普通员工工资=单日工资*天数*等级"+",工资为:"+this.getOnedaymoney()*this.getWorkday()*this.getGrade());
	}
}

Test:

package gongzi;

public class Test1 {
	public static void main(String[] args) {
		Simplewoker sw = new Simplewoker();
		sw.setOnedaymoney(200);
		sw.setWorkday(30);
		sw.setGrade(2);   //sw去继承父类
		sw.dayinway();
			
		ManageWoker mw = new ManageWoker();
		mw.setOnedaymoney(300);
		mw.setWorkday(30);
		mw.setGrade(3);  //mw去继承父类
		mw.dayinway();
	}
}

运行结果:

三:super父类和static关键字

①:使用super来调用父类中的指定操作,super可以用于访问父类中定义的属性,要注意super调用的父类构造方法的代码必须位于子类构造方法的第一行,并且只能出现一次,否则编译会报错。

②:静态变量static实际上是一个共享的全局变量,

例如:private static String school; // 大家都是一个学校的

           student.setschool = "希望小学";  // 后面所有的学生2 3 4....的值全部都会统一更改

当类被加载时,静态代码块会被执行,由于类只加载一次,所以static也会被加载一次。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值