class Main {
    public static void main(String[] args) {
       Object d = new Dog();
       d.barkOnce();
    }
}

class Dog
{
    private String voice;

    public void barkOnce()
    {
        System.out.println(voice);
    }
 }

每当我运行程序时,我的输出中都会出现错误:

退出状态1
Main.java:4:错误:找不到符号
d.barkOnce();
^
符号:方法barkOnce()
位置:对象类型的变量d

在分析了错误之后,我对为什么找不到该方法一无所知。有人可以解释一下我在这里可能会缺少什么吗?

最佳答案

方法barkOnce()不属于Object类型。您应该能够使用:
Dog d = new Dog()
当您转换为类似Object的基础时,除非您进行回播,否则编译器会阻止您使用更特定类型的任何内容。

07-25 21:11