先展示一下题目要求
由上述问题可以总结出来父类的属性是工作名称,父类的方法是工作描述;对于子类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条)