子类中调用父类中的属性值为null
老师我已经在测试类中实例化给父类work的name赋值了 可是为什么我在子类中直接调用结果为空??
一下是源代码: 四个类
public class Test {
public static void main(String[] args) {
Work fa=new Work("测试工作");
System.out.println("父类信息测试:"+fa.work());
TestWork t=new TestWork(10,5);
System.out.println("测试工作类信息测试:"+t.work());
DevelopmentWork tt=new DevelopmentWork(1000,10);
System.out.println("研发工作类信息测试:"+tt.work());
}
}
public class Work {
// 属性:工作ming
private String name ;
// 无参构造方法
public Work(){
}
// 带参构造方法,完成工作类型的赋值
public Work(String name){
this.setname(name);
}
// 公有的get***/set***方法完成属性封装
public void setname(String name){
this.name=name;
}
public String getname(){
return this.name;
}
// 方法:工作描述,描述内容为:开心工作
public String work() {
return "开心工作";
}
}
public class TestWork extends Work {
//属性:编写的测试用例个数、发现的Bug数量
private int num;
private int bug;
// 编写构造方法,并调用父类相关赋值方法,完成属性赋值
public TestWork(){
}
public TestWork(int num,int bug){
this.setnum(num);
this.setbug(bug);
}
// 公有的get***/set***方法完成属性封装
public void setnum(int num){
this.num=num;
}
public int getnum(){
return this.num;
}
public void setbug(int bug){
this.bug=bug;
}
public int getbug(){
return this.bug;
}
// 重写运行方法,描述内容为:**的日报是:今天编写了**个测试用例,发现了**bug。其中**的数据由属性提供
public String work() {
return this.getname()+"的日报是:"+"今天编写了"+num+"个测试用例,发现了"+bug+"个bug";
}
}
public class DevelopmentWork extends Work {
// 属性:有效编码行数、目前没有解决的Bug个数
private int a;
private int b;
//编写构造方法,并调用父类相关赋值方法,完成属性赋值
public DevelopmentWork(){
}
public DevelopmentWork(int a,int b){
this.seta(a);
this.setb(b);
}
// 公有的get***/set***方法完成属性封装
public void seta(int a){
this.a=a;
}
public int geta(){
return this.a;
}
public void setb(int b){
this.b=b;
}
public int getb(){
return this.b;
}
// 重写运行方法,描述内容为:**的日报是:今天编写了**行代码,目前仍然有**个bug没有解决。其中**的数据由属性提供
public String work() {
return this.getname()+"的日报是:今天编写了"+a+"行代码,目前仍然有"+b+"个bug没有解决";
}
}
正在回答 回答被采纳积分+1
- 参与学习 人
- 提交作业 9401 份
- 解答问题 16556 个
综合就业常年第一,编程排行常年霸榜,无需脱产即可学习,北上广深月薪过万 无论你是未就业的学生还是想转行的在职人员,不需要基础,只要你有梦想,想高薪
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星