java中的实例化
java中的new用于实例化一个对象
T1 a= new T1(); T2 b= new T1();
区别:
------------------------------------------
new是java里面的关键字,一般用于创建一个新的对象。
T1 a=new T1():表示创建一个新的T1对象
T2 b=new T1():这种多用在接口类与实现类之间 或者子类与父类之间
在接口类与实现类之间: T2为接口类,T1为T2的实现类
例如:Collection,list,set,map都为接口类,都不能实例化。继承自他们的ArrayList,Vector,HashTable,HashMap,stack都是具体类,可以实例化
Map<String, String> map = new HashMap<String, String>
在子类与父类之间:T2为父类,T1为T2的实现类
这些用法都为java中多态性的一个表现
java的实例化过程
你要买一个苹果,售货员给你一个苹果;
你要买一苹果, 相当于 --------- Apple apple = null;
这个时候你并没有拿到苹果---------java没有给你申请内存,这个时候apple还什么内容都没有,只是告诉别人apple是个苹果
售货员给你个苹果 ----------apple = new Apple();
这个时候你拿到了苹果 ---------- java给你开辟了空间,并且apple可以使用苹果的特性,比如:apple.getPrice(),apple.getTaste()
这就是apple的实例化