2010-07-13 70 views
0

我遇到了两个类和一个普通类之间的继承问题。下面是我的例子:Android/Java抽象类继承问题

抽象类A function get_name();

摘要ClassB的延伸ClassA的

ClassC延伸ClassB的

现在,当我创建ClassC的目的,我无法访问GET_NAME()函数。我不确定我在这里做错了什么。任何帮助将非常感谢!

+0

我把一个简单的测试用例放在一起,它在包范围访问中工作正常。你能提供源代码,或者至少是失败的消息和/或失败的指令是什么? – fadden 2010-07-13 19:42:48

回答

3

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

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

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

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

+2

没有一个字在前面它是封装非私人 – bwawok 2010-07-13 02:11:09