Java课程案例学习

Posted 康小庄

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java课程案例学习相关的知识,希望对你有一定的参考价值。

算法分析:

1)定义一个Employee类,在该类中定义了三个私有成员变量name、salary和id分别用来记录员工的姓名、薪水和员工编号信息,还定义了一个带参数的构造方法用来初始化员工的姓名、薪水和员工编号信息。

2)定义主类TestPrivateDemo,在主类中调用带参数的构造方法生成一个对象e,并输出该对象的姓名、员工编号和薪水信息。输出信息如下:“员工编号:1,姓名:张三,年薪: 50000.0”。

  1. 自行编程,掌握通过定义setter方法,正确设置私有变量值的方法。

算法分析:

1)在Emplyee类中定义可以设置name、salary和id变量值的setter方法。

2)在主类TestPrivateDemo中,通过调用三个setter方法重新设置三个成员变量的值,并输出下列信息:“员工编号:2,姓名:李四,年薪:25000.0”。

以上是完成数据封装的问题,完成了一个可以设置和输出员工信息的程序,现在要在此基础上进行改进,要求增加能设置和输出公司经理信息的程序,具体要求如下:

1)公司经理的薪水是基本工资与奖金之和。

2)增加一个可以设置和输出职务信息的功能。

3)其余信息项与普通员工一致。

算法分析:

1)定义父类Employee,Employee中中定义可以设置和获取name、salary和id变量值的setter方法和getter方法。

2)定义子类Manager,Manager中覆盖父类的getSalary()方法,使得最后的工资是基本工资和奖金之和。

3)在子类Manager中再定义一个可以设置职务信息的setter方法,同时定义一个可以获取职务信息的getter方法。

4)在主类TestInheritanceDemo中,先创建父类Employee的一个对象,并通过通过调用三个setter方法重新设置三个成员变量的值,并输出下列信息:“员工编号:1,姓名:王笑,年薪:20000.0”。然后创建子类Manager的一个对象,并通过调用四个setter和getter方法,输出下列信息:“员工编号:2,姓名:李东,职务:经理,年薪:50000.0”

Employee

package com.zhuang.chapter03;

public class Employee 
	private String name;

	private double salary;

	private int id;

	public Employee(String name, double salary, int id) 
		super();
		this.name = name;
		this.salary = salary;
		this.id = id;
	

	public Employee() 
		super();
	

	public String getName() 
		return name;
	

	public void setName(String name) 
		this.name = name;
	

	public double getSalary() 
		return salary;
	

	public void setSalary(double salary) 
		this.salary = salary;
	

	public int getId() 
		return id;
	

	public void setId(int id) 
		this.id = id;
	

	public void say() 
		System.out.println("员工编号:" + this.id + "," + "姓名:" + this.name + "," + "年薪:" + this.salary);
	


Manager

package com.zhuang.chapter03;

public class Manager extends Employee 

	private double bouns;

	private String job;

	public double getBouns() 
		return bouns;
	

	public void setBouns(double bouns) 
		this.bouns = bouns;
	

	public String getJob() 
		return job;
	

	public void setJob(String job) 
		this.job = job;
	

	@Override
	public double getSalary() 
		// TODO Auto-generated method stub
		return this.bouns + super.getSalary();
	

	@Override
	public void say() 
		// TODO Auto-generated method stub
		System.out.println(
				"员工编号:" + super.getId() + "," + "姓名:" + super.getName() + "," + "职务:" + this.job + "年薪:" + this.bouns);
	


**EmployeeMain **

package com.zhuang.chapter03;

public class EmployeeMain 

	public static void main(String[] args) 
		// TODO Auto-generated method stub
		/*
		 * Employee employee = new Employee(); employee.setId(2);
		 * employee.setName("张三"); employee.setSalary(25000.00); employee.say();
		 */
		Employee employee = new Employee(); 
		employee.setId(1);
		employee.setName("王笑");
		employee.setSalary(20000.0);
		employee.say();
		
		Manager manager = new Manager();
		manager.setId(2);
		manager.setJob("经理");
		manager.setBouns(50000.0);
		manager.setName("李东");
		manager.say();
		
	



以上是关于Java课程案例学习的主要内容,如果未能解决你的问题,请参考以下文章

201871010119-帖佼佼《面向对象程序设计(java)》课程学习总结

张玉晶 201871010135《面向对象程序设计(java)》课程学习总结

201871010102-常龙龙《面向对象程序设计(java)》课程学习总结

201871010131-张兴盼-《面向对象程序设计java》学习总结

hadoop课程设计

201871010117-石欣钰《面向对象程序设计(java)》课程学习总结