Java 学习笔记 Java核心技术I

深入理解数据库原理
以实战为基础,以数据库原理为基础,结合实战,深入理解数据库原理。
wangxiaoming

                                               Java 学习笔记


继承: 可以在已经存在的类上构造一个新类
             
                可以服用这些方法和类, 还可以添加一些新的方法和类, 
                  extends 表明正在构造的行派生与一个已经存在的类, java 中继承都是共有继承, 没有私有继承和保护继承
                
                 
                    super 关键字有两个用途 一个是调用超类的办法, 一个是调用超类的方法, 而是调用超类的构造器

                 具体的看代码:

                            
package hello;

import java.util.Date;
import java.util.GregorianCalendar;

public class ManagerTest {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		//在这章里主要是要说继承的, 也就是第五章
		//首先新建一个类   这个  Manager(name, salary ,year , month , day)
		Manager boss =  new Manager("Car Bolw", 8000, 1987,12,7); 
		//在这个类里面有一个成员函数
		boss.setBonus(5000);   //这里调用的是Manager 里面的当然最后掉哟美好
		
		Employee[] staff = new Employee[3];     //Employee 中有三个元素可以用数组进行表示
		staff[0] = boss;
		staff[1] = new Employee("Harry Hacker", 5000,1989,10,12);
		staff[2] = new Employee("Tomy Tester", 6000,1990,11,23);
		for(Employee e:staff)
		{
			//依次显示这些就可以了
			System.out.println("name = "+ e.getName() + "Salary " + e.getSalary());
		}     
	}

}
class Employee {
	private String name;
	private double  Salary;
	private Date hireDay;
	
	//先是构造这个类 里面都是一些参数列表
	public Employee(String n , double s,int year , int month,int day)
	{
		name = n;
		Salary = s;
		GregorianCalendar calendar = new GregorianCalendar(year , month -1, day);
		hireDay = calendar.getTime();  //获取时间
	}
	//成员函数 有时候我再想学完C++面向对象编程再学java 发现Java好简单啊
	public String getName()
	{//返回姓名
		return name;
	}
	public double getSalary()
	{
		return Salary;
	}
	public Date getHireDay()
	{
		return hireDay;
	}
	
}
//下面就是该类的继承了
class Manager extends Employee
{
	private double  bonus;
	//下面首先构造出这个函数
	public Manager(String n, double s,int year , int month , int day )
	{//构造函数里卖弄进行初始化
		//java中使用super 调用超类的办法 super.getSalary() 相当于 C++中的Employee::getSalary
		//下面这句调用超类中含有s n, year , month day 参数的构造器
		super(n, s, year,month, day);       //调用超类
		
		bonus = 0;
	}
	public double getSalary()
	{//感觉这里面的继承有点类似于重写这个函数
		double baseSalary = super.getSalary();
		return baseSalary + bonus;
	}
	public void setBonus(double b)
	{
		bonus = b;
	}
}

wangxiaoming CSDN认证博客专家 架构 Spring Boot Redis
博客是很好的总结和记录工具,如果有问题,来不及回复,关注微信公众号:程序员开发者社区,获取我的联系方式,向我提问,也可以给我发送邮件,联系 1275801617@qq.com
©️2020 CSDN 皮肤主题: Age of Ai 设计师: meimeiellie 返回首页
实付0元
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值