List和ArrayList
-
List myList = new ArrayList();
您只能调用List接口中定义的方法和引用成员。如果您将其定义为: -
ArrayList myList = new ArrayList();
除了那些定义从List继承的成员之外,您还可以调用特定于ArrayList的方法并使用特定于ArrayList的成员。
然而,当您在第一个示例中调用List接口的方法(在ArrayList中实现)时,将调用ArrayList中的方法(因为List接口不实现任何方法)。这就是所谓的多态性。
多态的优势
-
1.可替换性:多态对已存在的代码具有可替换性。
-
2.可扩充性:多态对代码具有可扩充性。增加新的子类不影响已存在类的多态性、继承性,以及其他特性的运行和操作。实际 上新加子类更容易获得多态功能。
-
3.接口性:多态是超类通过方法签名,向子类提供了一个共同接口,由子类来完善或者覆盖它而实现的。
-
4.灵活性:它在应用中体现了灵活多样的操作,提高了使用效率。
-
5.简化性:多态简化了对应用软件的代码编写和修改过程。