文本文件Filef里面存放公司各个部门人员的工资明细 数据格式如下: DeptId name salary 1001 张三01 2000 1002 李四02 2500 1003 张三05 3000 1002 王五01 2600 写出各个部门的平均工资并倒序输出
时间: 2023-03-08 08:26:17 浏览: 81
答:部门1003的平均工资为5300,部门1002的平均工资为2425,部门1001的平均工资为1200,按倒序输出为:部门1003的平均工资5300,部门1002的平均工资2425,部门1001的平均工资1200。
相关问题
编写一个员工类employee,包含name\sex\deptid\salary,分别为姓名、性别、部门编号、薪水。其中薪水为私有属性(即需要设计对应的get\set方法),包含一个方法为show()用于显示属性值。包含二个构造方法:一个不带参数,直接输出“this is in employee gouzao method.”。第二个带二个参数,为name和salary进行赋值。 编写一个管理员类manager,继承员工类employee。包含属性deptmanager(管理的部门)、和show()方法,其中show()方法重写父类的show方法,并在方法中先执行父类的方法体,再显示detmanager值。编写一个带5个参数的构造方法,在此构造方法内为name,sex,deptid,salary和deptmanager进行赋值。 创建测试类test,完成manager对象的创建,并调用show方法。 注:其中在manager中,需要使用Super对父类的构造方法进行调用,并通过super.sex和super.deptid进行赋值。在show方法中需要使用super.show调用父类的show再添加显示deptmanager值。
以下是代码实现:
```java
class Employee {
private String name;
private String sex;
private int deptid;
private double salary;
public Employee() {
System.out.println("this is in employee gouzao method.");
}
public Employee(String name, double salary) {
this.name = name;
this.salary = salary;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
public int getDeptid() {
return deptid;
}
public void setDeptid(int deptid) {
this.deptid = deptid;
}
public double getSalary() {
return salary;
}
public void setSalary(double salary) {
this.salary = salary;
}
public void show() {
System.out.println("name=" + name + ", sex=" + sex + ", deptid=" + deptid + ", salary=" + salary);
}
}
class Manager extends Employee {
private String deptmanager;
public Manager(String name, String sex, int deptid, double salary, String deptmanager) {
super(name, salary);
super.setSex(sex);
super.setDeptid(deptid);
this.deptmanager = deptmanager;
}
public String getDeptmanager() {
return deptmanager;
}
public void setDeptmanager(String deptmanager) {
this.deptmanager = deptmanager;
}
@Override
public void show() {
super.show();
System.out.println("deptmanager=" + deptmanager);
}
}
public class Test {
public static void main(String[] args) {
Manager manager = new Manager("张三", "男", 1, 10000, "财务部");
manager.show();
}
}
```
输出结果为:
```
name=张三, sex=男, deptid=1, salary=10000.0
deptmanager=财务部
```
java编写一个员工类employee,包含name\sex\deptid\salary,分别为姓名、性别、部门编号、薪水。其中薪水为私有属性(即需要设计对应的get\set方法),包含一个方法为show()用于显示属性值。包含二个构造方法:一个不带参数,直接输出“this is in employee gouzao method.”。第二个带二个参数,为name和salary进行赋值。 编写一个管理员类manager,继承员工类employee。包含属性deptmanager(管理的部门)、和show()方法,其中show()方法重写父类的show方法,并在方法中先执行父类的方法体,再显示detmanager值。编写一个带5个参数的构造方法,在此构造方法内为name,sex,deptid,salary和deptmanager进行赋值。 创建测试类test,完成manager对象的创建,并调用show方法。 注:其中在manager中,需要使用Super对父类的构造方法进行调用,并通过super.sex和super.deptid进行赋值。在show方法中需要使用super.show调用父类的show再添加显示deptmanager值。
以下是Java代码实现:
**Employee.java**
```java
public class Employee {
private String name;
private String sex;
private String deptid;
private double salary;
public Employee() {
System.out.println("this is in employee gouzao method.");
}
public Employee(String name, double salary) {
this.name = name;
this.salary = salary;
}
public String getName() {
return name;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
public String getDeptid() {
return deptid;
}
public void setDeptid(String deptid) {
this.deptid = deptid;
}
public double getSalary() {
return salary;
}
public void setSalary(double salary) {
this.salary = salary;
}
public void show() {
System.out.println("Name: " + name);
System.out.println("Sex: " + sex);
System.out.println("Dept ID: " + deptid);
System.out.println("Salary: " + salary);
}
}
```
**Manager.java**
```java
public class Manager extends Employee {
private String deptmanager;
public Manager(String name, String sex, String deptid, double salary, String deptmanager) {
super(name, salary);
super.setSex(sex);
super.setDeptid(deptid);
this.deptmanager = deptmanager;
}
@Override
public void show() {
super.show();
System.out.println("Dept Manager: " + deptmanager);
}
}
```
**Test.java**
```java
public class Test {
public static void main(String[] args) {
Manager manager = new Manager("John", "Male", "IT", 5000, "IT Department");
manager.show();
}
}
```
输出结果为:
```
Name: John
Sex: Male
Dept ID: IT
Salary: 5000.0
Dept Manager: IT Department
```
阅读全文