当前位置: 首页 > 知识库问答 >
问题:

如何覆盖java抽象类的变量数据类型[closed]

马弘和
2023-03-14
abstract class Food {
    double tasteScore;
    abstract void getName();
}

class Bread extends Food {

    int tasteScore = 7;
    public void getName() {
        system.out.println("Bread");
    }
}

public class Start {
    public static main(String [] args) {
        Bread obj1 = new Bread();
        obj1.getName();
        System.out.println(obj1.tasteScore);
    }
}

我得到了tasteScore值=7.0。它的意思是double(超级类),但我想打印tastescore的int值。如何访问Bread类tasteScore而不是Food类?

共有1个答案

长孙德惠
2023-03-14

即使在更正了编译错误之后,我也无法再现该问题:

    main缺少返回类型( void)
  • 系统应为系统

输出:

Bread
7

无论如何,字段(实例或类变量)不能被覆盖。

 类似资料:
  • 问题内容: 我有一个抽象类,应该实现一个公共字段,该字段是一个接口或另一个抽象类。 像这样的东西: 现在我有另一个专门的类容器: Java的让我编译这个,和我想象的领域中被自动重载领域的......这些问题是:我是对这个?孩子的自动“超载”会发生吗? 而且,更重要的问题是,如果我还有另一个这样的课: 会返回1还是2?我的意思是容器字段将称为通用字段还是特殊字段?还有,如果特殊的prop1被声明为S

  • 我有这样的代码: 我想在调用doIt()时测试MyCallback的行为。我使用Mockito创建一个模拟外部,然后可以获取外部。doSomething()来执行MyCallback。发生了什么事。我可以控制调用super的返回值吗。第4行的某个条件?我可以重新安排实现以提高可测试性吗?无法更改外部回调和外部抽象回调的实现。

  • 问题内容: 让抽象类定义实例变量是否是一种好习惯? 然后,子类ExternalJavaScript.class会自动获取源变量,但我认为,如果所有子类本身都定义了源而不是继承,则读取代码会更容易。 你有什么建议? /亚当 问题答案: 我本以为这样的话会更好,因为您要添加一个变量,所以为什么不限制访问并使它更整洁呢?您的吸气器/装夹器应该按照罐子上的说明去做。 再次提到这个问题,您在阅读时是否会费心

  • 问题内容: 有没有办法从Java通用类的类型变量中获取Class对象?像这样: 此类型信息在编译时可用,因此不受类型擦除的影响,因此,从理论上讲,应该有一种方法来实现此目的。是否存在? 问题答案: 这有效:

  • 问题内容: 我有一些看起来像这样的代码: 并且我想覆盖模型中字段的默认值,使其适用于该模型。 我已经浏览了一些相关的Django文档,并仔细查看了模型对象,但是我很难找到合适的位置进行此操作。有什么建议? 问题答案: 你实际上可以按照以下步骤进行操作: 我已经做了一两次。之所以有效,是因为Message上的字段与BaseMessage上的字段是不同的实例。但是,我怀疑是否建议使用它;-)它在很大程

  • 我是java新手,我正在学习抽象课程,但我被困在了一个地方。 我想将不同的数据类型返回到,但我做不到。我确实在java中参考了抽象方法的不同返回类型,但没有提出这个问题,因为我在java方面的经验较少,因此我不明白该链接的solution.Please有人帮我解决这个问题。 密码 错误 测试.java:18: 错误: 联合不是抽象的, 不会覆盖抽象方法率对银行的兴趣() 类Union扩展Bank{