LinkedList接口(在代码的使用过程中和ArrayList没有什么区别)
ArrayList底层是object数组,所以ArrayList具有数组的查询速度快的优点以及增删速度慢的缺点。
而在LinkedList的底层是一种双向循环链表。在此链表上每一个数据节点都由三部分组成:前指针(指向前面的节点的位置),数据,后指针(指向后面的节点的位置)。最后一个节点的后指针指向第一个节点的前指针,形成一个循环。
双向循环链表的查询效率低但是增删效率高。所以LinkedList具有查询效率低但增删效率高的特点。
ArrayList和LinkedList在用法上没有区别,但是在功能上还是有区别的。
LinkedList经常用在增删操作较多而查询操作很少的情况下:队列和堆栈。
队列:先进先出的数据结构。
堆栈:后进先出的数据结构。
package TomTexts;
class superClass{
void superPrint(){
System.out.println("This is superClass!");
}
}
class subClass extends superClass{
void superPrint(){
System.out.println("This is subClass!");
}
}
public class TomTexts_10{
public static void main(String args[]){
subClass subObject = new subClass();
subObject.superPrint(); //子类对象调用子类的方法
superClass superObject = new superClass();
superObject.superPrint(); //父类对象调用父类的方法
}
}
版权声明:本文为csdnborter原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。