A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 任献东 中级黑马   /  2014-10-16 11:09  /  1277 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

  1. public class Test1 {

  2.         public static void main(String[] args) {
  3.            Employee em = new Employee("lisi", "9527", 3000);
  4.            Manager ma = new Manager("wangwu", "3978", 5500, 1500);
  5.            System.out.println("员工:"+em.getName()+"工号:"+em.getNumber()+"工资:"+em.getSalary());
  6.            System.out.println("员工:"+ma.getName()+"工号:"+ma.getNumber()+"工资:"+em.getSalary());
  7.         }

  8. }
  9. class Employee {//职工
  10.         private String name;
  11.         private String number;
  12.         private double Salary;
  13.         public void setName(String name) {
  14.                 this.name = name;
  15.         }
  16.         public void setNumber(String number) {
  17.                 this.number = number;
  18.         }
  19.         public void setSalary(double Salary) {
  20.                 this.Salary = Salary;
  21.         }
  22.     public String getName() {
  23.         return name;
  24.     }
  25.     public String getNumber() {
  26.         return number;
  27.     }
  28.     public double getSalary() {
  29.         return Salary;
  30.     }
  31.     public Employee(String name,String number,double Salary){
  32.         this.name=name;
  33.         this.number=number;
  34.         this.Salary=Salary;
  35.     }
  36. }
  37. class Manager extends Employee{//经理继承
  38.     private double award;//奖金
  39.     public double getAward() {
  40.                 return award;
  41.         }
  42.         public void setAward(double award) {
  43.                 this.award = award;
  44.         }
  45.         public Manager(String name, String number, double Salary,double award) {
  46.         super(name, number, Salary);
  47.         // TODO Auto-generated constructor stub
  48.         this.award=award;
  49.     }
  50.     public double getSalary(){
  51.         return super.getSalary()+this.award;
  52.     }
  53. }
复制代码

员工:lisi工号: 9527工资:3000.0
经理:wangwu工号: 3978工资:3000.0
经理的工资为什么数值不对啊  到底哪里错了

评分

参与人数 1技术分 +1 收起 理由
杨佳名 + 1 淡定

查看全部评分

4 个回复

倒序浏览
你经理的getSalary()方法根本就没有执行过。。。。。。。。。。。
回复 使用道具 举报
我的个去,终于看见了,你看你调用的是谁的方法,你两次调用的都是员工的getSalary()方法,要是能把经理工资输出来才是见鬼了...

评分

参与人数 1技术分 +1 收起 理由
杨佳名 + 1 赞一个!

查看全部评分

回复 使用道具 举报
  1. System.out.println("员工:"+ma.getName()+"工号:"+ma.getNumber()+"工资:"+em.getSalary());
复制代码

你用em.getSalary()想输出ma.getSalary(),你也是醉了
回复 使用道具 举报
DreamSeeker 发表于 2014-10-16 12:10
我的个去,终于看见了,你看你调用的是谁的方法,你两次调用的都是员工的getSalary()方法,要是能把经理工资 ...

啊啊啊  我也刚注意到  经理的对象忘改了亏我还找了半天逻辑错误  
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马