父类的引用指向子类的对象
如:Collection c=new ArrayList();
这样做的深层意义是什么?
如:Collection c=new ArrayList();
这样做的深层意义是什么?
解决方案 »
- NullpointerException,但没有stacktrace信息?
- 求助高手,中文匹配正则表达式
- 关闭一个界面的同时,如何打开另一个界面??
- 字符比较问题(新手提问)
- 请问RandomAccessFile,(DataInput, DataOutput)的区别和应用场合
- 如何得到某年某月共有多少天?急
- java连接oracle异常问题,求教
- 使用Calendar 和子类GregorianCalendar所遇到的问题
- jboss and tomcat are independed each other?or not ?
- 怎样在JAVA里面实现查找/usr/local下所有的A*.TXT文件
- 异常处理机制是否也采用了观察者模式的思想呢?
- Introduction to Java Programming 哪下到bonus chapters
Collection c=new ArrayList(); (或者new LinkedList();)
c.sort();这样你只需要修改new后面的内容 就可以实现不同的排序方法
爸爸 王小二=new 大儿子();
爸爸 王小二=new 小儿子();
那我现在叫大儿子过来,王小二可以过来,我叫小儿子过来,王小二也可以过来方便吧。
在做项目的时候, 爸爸 王小二; 这步是我写的;后面 王小二=new 小儿子();
或者new 大儿子()不一定是我写,那我怎么知道他到底要的是大儿子还是小儿子,
所有我声明他们爸爸的引用,你叫大儿子和小儿子都ok。
我要是写具体的 小儿子 王小二=new 小儿子(),不是把别人限定死了吗。
就算那两步都是你自己写,我项目做完了,我如果要修改的话,那我至少声明的那部分可以不动了吧。也就是说扩展了程序的 移植性和可维护性。
百度说的
声明接口,new实现
如题:实际new出来的是ArrayList()
实际用拿c来用的时候只能用Collection中的方法,必须向下转型才能用Arraylist中的方法