OO先导课——作业(1)
作业一
BUG
1.没有申请实例就使用方法
NewCharSet wrong=new wrong.interSet(se1,set2)
应该先瞎申请个实例
char [] r=new char[l]; NewCharSet right=new NewCharSet(r); right=right.interSet(set1, set2);
2.子类和父类的方法名字一样(参数、返回值也一样)但加了两笔--->方法就重写了,父类的不能使了
比如下面的就被覆盖了,子类用不了父类的
public void myToString(){ this.n++; }
解决:用super
public void myToString(){ super.myToString();this.n++; }
3.super 与 this 关键字
容易混
public class SuperDemo { public static void main(String []args) { new SubClass().showMessage(); } } class SuperClass { int i = 50; } class SubClass extends SuperClass { int i =100; public void showMessage() { System.out.printf("super.i = %d, this.i = %d\n", super.i, this.i); } }
//结果 super.i = 50, this.i = 100 //super.i继承过来的,this.i自己的
问题
1.要求的记数功能只能在每个后面加n++嘛?