当前位置:编程学习 > JAVA >>

JAVA高手救急 现在在考试 这是个改错题 星号下面就是错误 请改正 求好人 好人一生平安 5555

//Java3.java /**********found***************/ final class Employee { public String name; //姓名 double salary; //工资 public Employee(String n,double s) { //构造方法 name = n; salary = s; } abstract public double getSalary(); //获取工资 } class Manager extends Employee{ //继承Employee private double bonus=0; //奖金 public Manager(String n, double s,double b) {//构造方法 /**********found***************/ Employee(n,s); //调用父类构造方法 bonus=b; } public double getSalary(){ return salary; } public double getIncome() { //获取收入 return this.getSalary()+ bonus; } } public class Java3 { public static void main(String[] args) { Manager boss = new Manager("杰克",12000,5000); System.out.println("姓名:" + boss.name + "\n薪水:"+ boss.getIncome()); } }
追问:大神  谢谢您帮我解答   但是我现在对这个一窍不通  您老能不能直接告诉我  在哪里改  怎么改 ?谢谢啊   其实不用多写   就是星号下面的那一句是错误的  改下就行了老大  能把你的 QQ号给我吗 ?   我是个新手  以后还好请教你  现在像您这么热心的人太少了    还有一题
答案:final 类不能被extends,
非abstract类中不能有abstract修饰的属性和方法,
其他:final 类是不可以被继承的,这个你知道吧。本身你在一个非抽象类里面定义一个抽象方法就是一个错误了,你现在是在一个final类里面定义一个抽象方法,那就是错上加错了。。。
额。。。。。不好意思,我看错了,不是debug是改错是吧。。。
把  final class Employee改成 abstract class Employee 就行了。
另外,子类调用父类方法要用 
super   super(n,s);   就行了。super在子类中就相当于父类的名字。
其实只要改星号下面的第一句就可以了  = 。=
easy job。

上一个:java分页
下一个:java 负责对象序列化

CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,