
先展示一下题目要求
由上述问题可以总结出来父类的属性是工作名称,父类的方法是工作描述;对于子类Testwork类来说,属性是编写的测试用例个数,还有发现的bug数,以及重写的工作描述;对于子类Developmentwork类来说,属性是有效编码行数和未解决的bug数,方法为重写的工作描述。
以下是父类的定义【特别注意:必须是在你已经建的包下面创立work父类以及子类】
public class Work {
public String workname;//工作名称
//alt+shift+s+o 生成带参构造
public Work() {}
public Work(String workname) {
this.workname = workname;
}
@Override
//1.帮助自己检查是否正确的复写了父类中已有的方法
//2.告诉读代码的人,这是一个复写的方法(复写父类的方法)
public String toString() {
return "Work [workname=" + workname + "]";
}
void workspeck() {
System.out.println("父类信息测试:开心工作");
}
}
下面是Testwork类的定义
public class Testwork extends Work
//测试类定义【Work类的子类】
{
public int testnum;//测试用例数
public int bugnum;//bug数
public Testwork(String workname, int testnum, int bugnum)
//Test work子类的带参构造方法
{
super.workname=workname;
this.testnum = testnum;
this.bugnum = bugnum;
}
void workspeack()
//Test work类的无参构造方法
{
System.out.println(workname+"信息测试:测试工作的日报是:今天编写了"+testnum+"个测试用例,发现了"+bugnum+"个bug");
}
}
下面是Developmentwork类的定义
public class Developmentwork extends Work
//研发类的定义【Work类的子类】
{
public int codenum;//代码行数
public int notbugnum;//未解决的bug数
public Developmentwork(String workname, int codenum, int notbugnum)
//Developmentwork子类的带参的构造方法
{
super.workname=workname;
this.codenum = codenum;
this.notbugnum = notbugnum;
}
@Override
//1.帮助自己检查是否正确的复写了父类中已有的方法
//2.告诉读代码的人,这是一个复写的方法(复写父类的方法)
public String toString() {
return "Developmentwork [codenum=" + codenum + ", notbugnum=" + notbugnum + "]";
}
void workspeack()
//【子类】研发类的无参构造方法
{
System.out.println(workname+"信息测试:研发工作的日报是:今天编写了"+codenum+"行代码,目前任然还有"+notbugnum+"个bug问题未解决");
}
}
下面是Test_work类的定义
public class Test__work {
public static void main(String[] args) {
Work w0=new Work();
w0.workspeck();
Testwork w1=new Testwork("测试类工作",10,5);
w1.workspeack();
Developmentwork w2=new Developmentwork("研发类",1000,10);
w2.workspeack();
//w2.setWorkname("研发类");
}
}
下面是代码实现后的界面
总结:
1.对于父类来说,它里面的属性和方法可以直接被子类调用,但是如果子类中的方法需要重写时,在子类中重写,并不在父类当中写。
2.对于子类来说,可以用super关键字调用父类的属性,子类可以写自己的属性和方法,有时也需要将父类中的方法重写。
3.另附上满足继承关系的子类对象的初始化顺序:
父类静态成员——子类静态成员——父类对象构造——子类对象构造
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)