用java编写一个程序:某个公司有3不同的雇员,分为A、B、C3个级别。。

某个公司有3不同的雇员,分为A、B、C3个级别。公司总的雇员数目因月份的不同可能发生变化,各个级别的人数每个月也可能发生变化。每个级别的月薪是互不相同的。编写一个程序计算... 某个公司有3不同的雇员,分为A、B、C3个级别。公司总的雇员数目因月份的不同可能发生
变化,各个级别的人数每个月也可能发生变化。每个级别的月薪是互不相同的。编写一个程序
计算公司一个月需要支付的全部薪水。
要求有一个abstract类,类名为Employee。Employee的子类有AgradeEmployee、BgradeEmployee
CgradeEmployee。Employee类中有一个abstract方法,子类重写父类方法,给出各自的月薪水数。
编写一个Company类,该类用Employee数组作为成员,该数组元素可以是三个子类的上转型对象。
Company类提供计算月薪总和的方法,使得程序能输出Company对象需要支付的月薪总额。
展开
 我来答
longguoyou
2011-05-11
知道答主
回答量:7
采纳率:0%
帮助的人:3.7万
展开全部
package com.lgy.question;
public abstract class Employee {
public abstract double pay();
}

package com.lgy.question;
/**
* @author LONGGUOYOU
*
* A类员工工资 APAY 变动就改2000.00处
*
*/
public class AgradeEmployee extends Employee {
private static final double APAY = 2000.00;
private int peopleANumber;
public AgradeEmployee(int numbers) {
// TODO Auto-generated constructor stub
this.peopleANumber = numbers;
}
@Override
public double pay() {
// TODO Auto-generated method stub
return APAY * peopleANumber;
}
}

package com.lgy.question;
/**
* @author LONGGUOYOU
*
* B类员工工资 BPAY 变动就改1000.00处
*
*/
public class BgradeEmployee extends Employee {
private static final double BPAY = 1000.00;
private int peopleBNumber;
public BgradeEmployee(int numbers) {
// TODO Auto-generated constructor stub
this.peopleBNumber = numbers;
}
@Override
public double pay() {
// TODO Auto-generated method stub
return BPAY * peopleBNumber;
}
}

package com.lgy.question;
/**
* @author LONGGUOYOU
*
* C类员工工资 CPAY 变动就改2200.00处
*
*/
public class CgradeEmployee extends Employee {
private static final double CPAY = 2200.00;
private int peopleCNumber;
public CgradeEmployee(int numbers) {
// TODO Auto-generated constructor stub
this.peopleCNumber = numbers;
}
@Override
public double pay() {
// TODO Auto-generated method stub
return CPAY * peopleCNumber;
}
}

package com.lgy.question;
import javax.swing.JOptionPane;
/**
*
* @author LONGGUOYOU
*
* /
public class Company {
/**
* 声明总工资
*/
public static double sumPay;
/**
* 求总共需要支付的工资
*/
public void sumPay(){
/**
* 以下是接受每个月人数的变动
*/
String anumbers = JOptionPane.showInputDialog("请输入A类员工人数:");
int Anumbers = Integer.parseInt(anumbers);
String bnumbers = JOptionPane.showInputDialog("请输入B类员工人数:");
int Bnumbers = Integer.parseInt(bnumbers);
String cnumbers = JOptionPane.showInputDialog("请输入C类员工人数:");
int Cnumbers = Integer.parseInt(cnumbers);
//将AgradeEmployee,BgradeEmployee,CgradeEmployee放进数组
final Employee[] employees = { new AgradeEmployee(Anumbers),
new BgradeEmployee(Bnumbers), new CgradeEmployee(Cnumbers) };
for (int i = 0; i < employees.length; i++) {
sumPay += employees[i].pay();
}
//对话框给出
JOptionPane.showMessageDialog(null,"总共需要支付工资:" + sumPay);
//控制台打印出来
System.out.println("总共需要支付工资:" + sumPay);
}
public static void main(String[] args) {
new Company().sumPay();
}
}
本人菜鸟一个,只供参考,大虾们请多多指教!
熊熊思雅05Y
推荐于2018-04-30 · TA获得超过134个赞
知道答主
回答量:108
采纳率:0%
帮助的人:78.2万
展开全部
public abstract class Employee {

public int theMoney(){
return 0;

}

}
class AgradeEmployee extends Employee{
private int theMoneyOfA;
public int theMoney(){
return theMoneyOfA;

}
}
class BgradeEmployee extends Employee{
private int theMoneyOfB;
public int theMoney(){
return theMoneyOfB;

}
}
class CgradeEmployee extends Employee{
private int theMoneyOfC;
public int theMoney(){
return theMoneyOfC;

}
}
class Company{
private int theNum;
Employee[] em=new Employee[theNum];
public void init(int i,Employee e){
em[i]=e;
}
public int sum(){
int sum=0;
for(int i=0;i<theNum;i++){
sum+=em[i].theMoney();
}
return sum;
}

}
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
白城明强光5160
2011-05-15 · TA获得超过5.4万个赞
知道大有可为答主
回答量:2.6万
采纳率:0%
帮助的人:1793万
展开全部
11
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
fqilelc
2011-05-14 · TA获得超过1849个赞
知道小有建树答主
回答量:1112
采纳率:0%
帮助的人:647万
展开全部
不行,你去把系统破解吧,去刷机!还有我要说下,你别怕刷坏.诺基亚系统刷坏了也没事,还可以从安装,也不用花钱.诺基亚不像苹果.苹果是只有进没有退.诺基亚手机是可以进退.楼主你放心的刷机吧.刷机很简单的塞班上面有教程.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
vndojsa
2011-05-14 · TA获得超过809个赞
知道小有建树答主
回答量:1042
采纳率:0%
帮助的人:574万
展开全部
不行,你去把系统破解吧,去刷机!还有我要说下,你别怕刷坏.诺基亚系统刷坏了也没事,还可以从安装,也不用花钱.诺基亚不像苹果.苹果是只有进没有退.诺基亚手机是可以进退.楼主你放心的刷机吧.刷机很简单的塞班上面有教程.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 3条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式