2011-05-20 128 views
4

“仅使用链接列表类的公共接口,编写一个方法 public static void reverse(LinkedList staff) ,它颠倒了链接列表中的条目。”什么是公共接口?

我不理解的部分是第一部分。链表类的公共接口是什么意思?我是否创建了一个类似的公开界面链表开始的新类文件?我可以在我的主类中添加方法作为内部类吗?

+0

欢迎来到Stackoverflow – NAVEED 2011-05-20 19:50:18

回答

7

这个问题是不必要的模糊。它试图问的是“仅使用访问修饰符publicLinkedList的方法和字段,编写此方法。”

你可以把你写的方法放在你喜欢的任何类中,但是这个限制说明你可能只用public方法和字段LinkedList来写它。

这也意味着您不能创建LinkedList的子类并使用其protected方法。

+0

是的。这也是我的解释。我认为这句话是一种礼貌的说法:“如果你使用某种”反向“方法,你会得到一个大的回合0。问题是,如果这是标准集合API'LinkedList'类,那么聪明的懒惰学生可以选择[Collections.reverse](http://download.oracle.com/javase/6/docs/api/java/util /Collections.html#reverse(java.util.List))或者拉一些[Guava Magic](http://guava-libraries.googlecode.com/svn/tags/release09/javadoc/com/google/common/collect /Lists.html#reverse(java.util.List))。学院的事情非常有趣:D。 – 2011-05-20 20:06:19

+0

在那里,做到了(有我的零分)......今天,我肯定会聘请自作聪明 - 不要重新发明轮子熟练的学生。 – 2011-05-20 20:17:32

2

类的公共接口是它的公共属性(可以读取或分配值的变量或字段)和方法(可以调用的函数)。

因此,该任务是创建一些不是LinkedList的子类。例如,创建一个子类可以让你访问受保护的方法。你需要创造一些外部的LinkedList,例如:

void MyMethod() 
{ 
    LinkedList l = new LinkedList(); 

    // do something with l here. 
} 
1

“链表类的公有接口”意味着只有LinkedList类的公共方法。请参阅the javadoc,列出所有公共方法,或者创建新的LinkedList实例并让IDE提示。