java - 使用Java继承,当我在父类(super class)中时如何引用特定的子类

标签 java inheritance

我有 3 个不同的类(class):

1级( super 级) 第 2 类(子类) 第 3 类(子类)

在第 1 类中,我有一个名为 NUMBER 的实例变量和一个名为 myNumber 的方法。

我正在尝试创建一个 if/else 语句,以便如果我们调用 2 类的 .myNumber 方法,则 NUMBER 等于 7。但是,在 3 类中,我希望该数字等于 8。

我的 if else 语句如下所示:

if (Class2) 
{
   myNumber = 7 
} 

else if (Class3) 
 { 
   myNumber = 8
 }

但是,当我在 Class3 中编写代码时,我不知道如何引用 Class2 和 Class3。

任何帮助都会很棒! :)

最佳答案

您可以通过继承轻松地做到这一点:

class Class1 {
    int number = 5;

    public void myNumber() {

    }
}

class Class2 extends Class1 {

    @Override
    public void myNumber() {
        number = 7;
    }
}

class Class3 extends Class1 {

    @Override
    public void myNumber() {
        number = 8;
    }
}

Demo

关于java - 使用Java继承,当我在父类(super class)中时如何引用特定的子类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47701569/

相关文章:

Java - 使列表大小动态化

c++ - 为什么 dynamic_cast 在这里给 nullptr 私有(private)继承?

Java 编码——继承问题

java - 如何在子类中访问父类(super class)的 protected 方法?

java - 如何避免使用instanceof/这里如何使用多态

java - 如何从不同的 Activity 更改媒体播放器

java - 如何将 JDBC 模板结果导出到 Excel 工作表

java - 如何将 java swing 类导入 intellij 的 GUI 构建器中?

c++ - 将继承类对象的 vector 传递给需要基类 vector 的函数

java - Android位图 - 将圆裁剪成半圆