| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 585 人关注过本帖
标题:[讨论]有空的找下错误!
只看楼主 加入收藏
革革
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2007-8-7
收藏
 问题点数:0 回复次数:6 
[讨论]有空的找下错误!

我在编下面的题,程序Manager中的public double zong()方法出现错误,大家进来了一起研究下,我还有很多地方不懂想请教大家呢,才学的,呵呵

编写一个程序,用于创建一个名为Employee(员工)的父类和两个名为Manager(经理)和Director(董事)的子类.Employee类包含3个属性和一个方法,属性为name(姓名),basic(基本工资)和address(家庭住址).方法名为show(),用于显示这些属性的值.Manager类有一个称为department(部门)的附加属性.Director类有一个称为transportAllowance(交通津贴)的附加属性,创建Manager和Director类的对象,并显示其详细信息
在上面的基础上,在Employee类中添加一个抽象方法以计算薪资总额.定义一个方法基于休假天数计算要从基本薪资中扣除的部分.计算薪资部分的公式为
lessPay=(leave<=5) ? (0.25*basic) : (0.5*basic)
Manager和Director类重写父类的的抽象方法
计算Manager的薪资总额的公式为:
totalAmount=basic+houseRentAllowance+dearnessAllowance+medicalAllowance
其中
houseRentAllowance为basic的8%
dearnessAllowance为basic的30%
medicalAllowance为1500
计算Director的薪资的总额的公式为:
totalAmount=basic+houseRentAllowace+dearnessAllowance+medicalAllowance+entertainmentAllowance+transportAllowance
其中
houseRentAllowance为basic的20%
dearnessAllowance为basic的50%
entertainmentAllowace为5000
该程序还应计算应付薪资,其公式为
NetPay=totalAmount-lessPay
应该编写一个方法来显示Name,Address,Basic,TotalPay和NetPay属性中存储的值

最后在主函数中定义Director类和Manager的对象,然后输出其相应信息

abstract class Employee
{
String name,address;
double basic;
double lessPay;
public abstract double zong();
double kou(int leave)
{
lessPay=(leave<=5)?(0.25*basic):(0.5*basic);
return lessPay;
}
}
class Manager extends Employee
{
char department;
double totalAmount;
public double zong()
{
this.totalAmount=this.basic+0.08*this.baisc+0.3*this.basic+1500;
return this.totalAmount;
}
double shiji()
{
return this.totalAmount-this.lessPay;
}
}
class Director extends Employee
{
double transportAllowance=2000.0;
double totalAmount;
public double zong()
{
this.totalAmount=this.basic+0.2*this.basic+0.5*this.basic+1500+5000+transportAllowance;
}
double shiji()
{
return this.totalAmount-this.lessPay;
}
}
class Example
{
public static void main(String args[])
{
Manager a=new Manager();
Director b=new Director();
a.name="张三";
a.address="沈阳";
a.basic=4000;
b.name="李四";
b.address="抚顺";
b.basic=10000;
a.zong();
a.kou(5);
a.shiji();
System.out.println("Manager的具体情况:"+a.name+a.address+a.zong()+a.lessPay+a.shiji());
b.zong();
b.kou(8);
b.shiji();
System.out.println("Director的具体情况:"+b.name+b.address+b.zong()+b.lessPay+b.shiji());
}
}

2007-08-17 13:33
革革
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2007-8-7
收藏
得分:0 

有人来过么? 我等着回信呢!!! 就剩那个错误了,不知道那方法哪里出错了!

2007-08-17 13:51
hwoarangzk
Rank: 4
来 自:冰封王座
等 级:贵宾
威 望:12
帖 子:1894
专家分:0
注 册:2007-7-17
收藏
得分:0 
class Manager extends Employee
{
char department;
double totalAmount;
public double zong()
{
this.totalAmount=this.basic+0.08*this.baisc+0.3*this.basic+1500;
return this.totalAmount;
}
double shiji()
{
return this.totalAmount-this.lessPay;
}
}
这个写错了
class Director extends Employee
{
double transportAllowance=2000.0;
double totalAmount;
public double zong()
{
return this.totalAmount=this.basic+0.2*this.basic+0.5*this.basic+1500+5000+transportAllowance;
}
double shiji()
{
return this.totalAmount-this.lessPay;
}
}
你没写return

I'm here, as always...
2007-08-17 14:26
george_vcool
Rank: 2
等 级:新手上路
威 望:3
帖 子:453
专家分:0
注 册:2007-7-23
收藏
得分:0 

好像就少了一个return

2007-08-17 18:38
革革
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2007-8-7
收藏
得分:0 

不是那的原因啊
C:\king\Employee.java:19: 找不到符号
符号: 变量 baisc
位置: 类 Manager
return this.totalAmount=this.basic+0.08*this.baisc+0.3*this.basic+1500;

怎么搞的,我已经用关键字限制当前BASIC了啊,谁能解释一下?

2007-08-17 19:32
kaishiuexi
Rank: 1
等 级:新手上路
帖 子:264
专家分:0
注 册:2007-6-8
收藏
得分:0 
3楼已经给了你完美的解答了:

两出错误:
1.把变量basic写成了baisc
2.程序的34行少写了个return

把这两处修正后就ok了,运行结果为:
Manger的具体情况:张三沈阳7220.01000.06020.0
Directer的具体情况:李四抚顺25500.05000.020500.0

当白天又一次把黑夜按翻在床上的时候,太阳就出生了……
2007-08-17 23:07
革革
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2007-8-7
收藏
得分:0 
HOHO,这两天出去了,没上论坛,谢谢大家啦,我会努力的
2007-08-22 09:37
快速回复:[讨论]有空的找下错误!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016856 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved