代码多态性示例之间的区别
difference between code polymorphism examples
package practice;
public abstract class OutterClass {
public int getMaxRows() {
}
public abstract boolean gameOver();
}
public class InnerClass extends OutterClass{
@Override
public boolean gameOver() {
//int lastRow = getMaxRows() - 1;
//int lastRow = this.getMaxRows() - 1;
//int lastRow = ((OutterClass)this).getMaxRows() - 1;
//int lastRow = ((InnerClass)this).getMaxRows() - 1;
//int lastRow = InnerClass.this.getMaxRows() - 1;
}
子类(内部类)中所有注释掉的代码有什么区别?
// int lastRow = getMaxRows() - 1;
// int lastRow = this.getMaxRows() - 1;
// int lastRow = ((OutterClass)this).getMaxRows() - 1;
// int lastRow = ((InnerClass)this).getMaxRows() - 1;
这些在效果上都是一样的。最后一个特别没意义。
// int lastRow = InnerClass.this.getMaxRows() - 1;
这不会编译。
注意:与您的命名法相反,此处没有内部 类。
package practice;
public abstract class OutterClass {
public int getMaxRows() {
}
public abstract boolean gameOver();
}
public class InnerClass extends OutterClass{
@Override
public boolean gameOver() {
//int lastRow = getMaxRows() - 1;
//int lastRow = this.getMaxRows() - 1;
//int lastRow = ((OutterClass)this).getMaxRows() - 1;
//int lastRow = ((InnerClass)this).getMaxRows() - 1;
//int lastRow = InnerClass.this.getMaxRows() - 1;
}
子类(内部类)中所有注释掉的代码有什么区别?
// int lastRow = getMaxRows() - 1;
// int lastRow = this.getMaxRows() - 1;
// int lastRow = ((OutterClass)this).getMaxRows() - 1;
// int lastRow = ((InnerClass)this).getMaxRows() - 1;
这些在效果上都是一样的。最后一个特别没意义。
// int lastRow = InnerClass.this.getMaxRows() - 1;
这不会编译。
注意:与您的命名法相反,此处没有内部 类。