List list = new ArrayList(); 是什么意思?? 这个是不是子类对象给父类引用??与泛形很相关吗? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 是的。但是安全起见,可以直接指定要存储的类型。比如我要往ArrayList中存String类型的数据:List<String> list = new ArrayList<String>(); list有很多实现类 我们需要arraylist的一些性质 当然要new它的对象 这里应该有多态的感觉吧 <T>这个东西是泛型的在jdk1.5之后出现的.List list = new ArrayList();这是个典型的向下转型,即多态性的表现.因为list是一个接口,接口的方法需要被覆写才能够直接拿过来使用. Animal a=new Monkey();猴子也是动物的一种。 可以用来实现泛型List<type> list = new ArrayList<type>(); List是接口,new ArrayList是实例化 用父类的接口new 一个子类的对象,与泛型无关. List list = new ArrayList(); 这是用父类的引用指向子类对象,与泛型没有关系。面向接口编程都是这么写的。就这一行代码并不能体现有什么好处看下面的这个方法你应该就会明白public void test(List list) { //do something...}如果这个方法带的参数是ArrayList类型的,那么只有ArrayList的对象才可以传过来而现在是用List做为参数,就表示只要是List接口的子类对象都可以传进来,如ArrayList,LinkedList,Vector List是一个接口,ArrayList是一个实现了List接口的具体类。 他们是父子关系,我们常用的是ArrayList,但常用List的引用去操作ArrayList 这是一个简单的面向接口编程的一种,如:List myList = new ArrayList(); List是接口,ArrayList是实现了List接口的类,大家都说了,呵呵! 嗯,楼上说得对,是个下转型。List有很多实现类,比如List list = new LinkedList();泛化是这样List<String> list = new ArrayList<String>(); List为接口,不是类new ArrayList()为类的构造实现。而List list = new ArrayList(); 就是调用ArrayList()构造函数,返回List接口。 给你看看ArrayList类的结构就知道了:public class ArrayList<E> extends AbstractList<E> implements List<E>, RandomAccess, Cloneable, Serializable它实现了List接口,List 接口的大小可变数组的实现。实现了所有可选列表操作,并允许包括 null 在内的所有元素。除了实现 List 接口外,此类还提供一些方法来操作内部用来存储列表的数组的大小。(此类大致上等同于 Vector 类,除了此类是不同步的。) 使用范型吧 会让你提高效率的 范型可以说是与List分不开的 说没有关系的人是没学jdk1.5List<type> list = new List<type>(); 看上去麻烦,用上去更好。 父类的引用指向子类的对象,这应该是多态的体现。Animal a=new Monkey(); 猴子也是动物的一种。从Monkey向上转型到Animal可能会“缩小”接口,但不会比Animal的全部接口更窄。 List是个接口。创建一个ArrayList的对象,返回给一个实现List接口的实例,就是list。 是不是使用list的话有些arrayList的方法会不能用了呢? java 面向接口的编程··向上转型~~ JAVA现在有泛型了吗? List是一个接口。 ArrayList实现了List这个接口 List是一个接口,ArrayList是一个实现了List接口的具体类 我想问问为什么不用ArrayList arrayList=new ArrayList()啊 搞不明白了 ArrayList list 只可以= new ArrayList()List list 可以= 继承于List的所有类的对象 java 如何连接音乐 问一个面试题,不懂题目意思 JFreechart,我想用这个开发应用程序画图,出了问题寻求帮助 JAVA写完怎么打包啊? J2EE 小妹才26分了,请问用java做一个b/s结构的矢量画图工具要用到那些技术呀? 工具栏和菜单栏显示的问题 谁知道Method-granularity transactions怎么翻译? 一个关于类继承的问题!! 如何合并多个excel short s1 = 1; s1 = s1 + 1; (s1+1运算结果是int型,需要强制转换类型) java 获取本机CPU个数
但是安全起见,可以直接指定要存储的类型。
比如我要往ArrayList中存String类型的数据:
List<String> list = new ArrayList<String>();
List list = new ArrayList();
这是个典型的向下转型,即多态性的表现.
因为list是一个接口,接口的方法需要被覆写才能够直接拿过来使用.
这是用父类的引用指向子类对象,与泛型没有关系。
面向接口编程都是这么写的。就这一行代码并不能体现有什么好处
看下面的这个方法你应该就会明白public void test(List list) {
//do something...
}如果这个方法带的参数是ArrayList类型的,那么只有ArrayList的对象才可以传过来
而现在是用List做为参数,就表示只要是List接口的子类对象都可以传进来,如ArrayList,LinkedList,Vector
他们是父子关系,我们常用的是ArrayList,但常用List的引用去操作ArrayList
这是一个简单的面向接口编程的一种,如:List myList = new ArrayList();
List有很多实现类,比如List list = new LinkedList();
泛化是这样List<String> list = new ArrayList<String>();
new ArrayList()为类的构造实现。而List list = new ArrayList();
就是调用ArrayList()构造函数,返回List接口。
public class ArrayList<E> extends AbstractList<E> implements List<E>, RandomAccess, Cloneable, Serializable
它实现了List接口,List 接口的大小可变数组的实现。实现了所有可选列表操作,并允许包括 null 在内的所有元素。除了实现 List 接口外,此类还提供一些方法来操作内部用来存储列表的数组的大小。(此类大致上等同于 Vector 类,除了此类是不同步的。)
List<type> list = new List<type>(); 看上去麻烦,用上去更好。
Animal a=new Monkey(); 猴子也是动物的一种。从Monkey向上转型到Animal可能会“缩小”接口,但不会比Animal的全部接口更窄。
创建一个ArrayList的对象,返回给一个实现List接口的实例,就是list。
List是一个接口。 ArrayList实现了List这个接口
List list 可以= 继承于List的所有类的对象