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
", super.i, this.i);
    }
}
//结果
super.i = 50, this.i = 100
//super.i继承过来的,this.i自己的

问题

1.要求的记数功能只能在每个后面加n++嘛?

原文地址:https://www.cnblogs.com/iwanna/p/7127887.html