我有一个问题。基于Java 7 API Collection是一个接口,但它带有一些具体的方法,如size()。我不明白,该接口如何包含已实现的方法。如果那是一个抽象类是有道理的。 最好的问候
答案 0 :(得分:2)
Collection是一个接口,但它带有一些具体的方法,例如size()。
事实并非如此。您已经知道的接口只定义了契约,并将实现留给了实现它的类。如果您指的是
Collection<String> collection = new ArrayList<String>();
System.out.println("Size of the collection is: " + collection.size());
请注意,size()
实施是由ArrayList
而不是Collection
提供的。
答案 1 :(得分:0)
java.util.Collection
没有实现方法,它是一个接口。这是size
方法的声明:
/**
* Returns the number of elements in this collection. If this collection
* contains more than <tt>Integer.MAX_VALUE</tt> elements, returns
* <tt>Integer.MAX_VALUE</tt>.
*
* @return the number of elements in this collection
*/
int size();
答案 2 :(得分:0)
任何方法都没有具体的实现方式。您引用的方法size
也没有任何具体实现。
/**
* Returns the number of elements in this collection. If this collection
* contains more than <tt>Integer.MAX_VALUE</tt> elements, returns
* <tt>Integer.MAX_VALUE</tt>.
*
* @return the number of elements in this collection
*/
int size();