如果通过接口实例化,则无法调用具体的实现方法

时间:2012-04-26 07:07:41

标签: java interface

List <String> list = new ArrayList<String>();
list.trimToSize();

由于trimToSize()仅出现在ArrayList中,而不出现在List界面中,如果我实例化为interface而不是具体,则会失去这一功能类?

1 个答案:

答案 0 :(得分:2)

您只能调用您正在呼叫的类型提供的方法。如果您想调用trimToSize( )方法,则需要先将list投射到ArrayList

( (ArrayList) list ).trimToSize( );