【问题标题】:Android/Java Abstract Class Inheritance IssueAndroid/Java 抽象类继承问题
【发布时间】:2011-03-15 02:17:52
【问题描述】:

我遇到了 2 个类和一个普通类之间的继承问题。这是我所拥有的示例:

抽象类A 函数get_name();

抽象 ClassB 扩展 ClassA

C 类扩展 B 类

现在,当我创建 ClassC 的对象时,我无法访问 get_name() 函数。我不确定我在这里做错了什么。任何帮助将不胜感激!

【问题讨论】:

  • 我整理了一个简单的测试用例,它在包范围访问中运行良好。您能否提供源代码,或者至少提供失败消息和/或失败指令是什么?

标签: java android inheritance abstract-class


【解决方案1】:

get_name() 必须是受保护的或公共的函数,ClassC 或 ClassB 才能访问它。

如果您没有在 ClassA 中声明这些参数之一,则只有 ClassA 可以使用 get_name();

public class ClassA
{
    protected CharSequence get_name()
    {
         return "ClassA";
    }
}

想一想,拥有一个抽象的私有函数没有多大意义,因为没有其他对象能够实现或访问它。

【讨论】:

  • 前面不写就是包不是私有的
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-11-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-08-04
相关资源
最近更新 更多