java中的实例化


java中的new用于实例化一个对象

T1 a= new T1();
T2 b= new T1();

区别:

 

 

问题1:不是实例化一个a,是实例化一个T1
T1 的一个 对象的引用 a  指向了堆空间里的一个新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中都是用引用来操作对象,a是引用,new T1()是对象,T1 a = new T1()这段代码,则是将他们连接起来,这样就可以通过a来操作new T1()这个对象;

 

 

 

 

 

 

java的实例化过程

你要买一个苹果,售货员给你一个苹果;

你要买一苹果, 相当于 --------- Apple apple = null;
这个时候你并没有拿到苹果---------java没有给你申请内存,这个时候apple还什么内容都没有,只是告诉别人apple是个苹果

售货员给你个苹果 ----------apple = new Apple();
这个时候你拿到了苹果 ---------- java给你开辟了空间,并且apple可以使用苹果的特性,比如:apple.getPrice(),apple.getTaste()

这就是apple的实例化


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM