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的实例化

java中的实例化的更多相关文章

  1. Java中创建实例化对象的几种方式

    Java中创建实例化对象有哪些方式? ①最常见的创建对象方法,使用new语句创建一个对象.②通过工厂方法返回对象,例:String s =String.valueOf().(工厂方法涉及到框架)③动用 ...

  2. Java中在实例化一个类时,这个类中没有初始值的int类型成员变量i,i的值是不是0?

    java中有两种类型一种是数值性,另一种是类变量数值性变量的初始值为0,类变量的初始化为null没做初始化成员变量int性变量是0, 在java中有这么一条规则,声明在方法中的变量在使用时必须要初始化 ...

  3. java中子类实例化过程中的内存分配

    知识点: 子类继承父类之后,实例化子类时,内存中子类是如何分配内存的呢? 下面,自己会结合一个例子,解释一下,一个子类实例化过程中,内存是如何分配的 参考博客:http://www.cnblogs.c ...

  4. 1、c#中可以有静态构造方法,而java中没有,例如在单例模式中c#可以直接在静态构造中实例化对象,而java不可以

    1.c#中可以有静态构造方法,而java中没有,例如在单例模式中c#可以直接在静态构造中实例化对象,而java不可以

  5. Java中抽象类也能实例化

    在Java中抽象类真的不能实例化么? 在学习的过程中,发现了一个问题,抽象类在没有实现所有的抽象方法前是不可以通过new来构建该对象的,但是抽象方法却是可以有自己的构造方法的.这样就把我搞糊涂了,既然 ...

  6. Java中抽象类也能实例化.RP

    在Java中抽象类真的不能实例化么? 在学习的过程中,发现了一个问题,抽象类在没有实现所有的抽象方法前是不可以通过new来构建该对象的,但是抽象方法却是可以有自己的构造方法的.这样就把我搞糊涂了,既然 ...

  7. Java中创建(实例化)对象的五种方式

    Java中创建(实例化)对象的五种方式1.用new语句创建对象,这是最常见的创建对象的方法. 2.通过工厂方法返回对象,如:String str = String.valueOf(23); 3.运用反 ...

  8. 深入理解Java中的String

    一.String类 想要了解一个类,最好的办法就是看这个类的实现源代码,来看一下String类的源码: public final class String implements java.io.Ser ...

  9. java中Map,List与Set的区别(转)

    Set,List,Map的区别 java集合的主要分为三种类型: Set(集) List(列表) Map(映射) 要深入理解集合首先要了解下我们熟悉的数组: 数组是大小固定的,并且同一个数组只能存放类 ...

随机推荐

  1. 在linux中运行main方法所在的java类(亲测有效!!!)

    本人是用SecureCRTPortable连接linux终端的.其他工具连接linux终端应该是一样的操作! 一.首先到移动到java工程所在的bin目录. 二.在bin目录下执行javac -cp ...

  2. ios 确定文字所占矩形框大小

    labelFrame.size = [self.label.text sizeWithFont:self.label.font constrainedToSize:CGSizeMake(self.la ...

  3. vc 读xml文件 宏

    自定义FOREACH循环,便于coding 在指定xml的nodelist b中遍历每个节点 #define FOREACH_NODE(a,b)\ long cnt = 0; \ CComPtr< ...

  4. Gearman简介

    gearman,从名字上看叫做“齿轮工”,就是通过齿轮把不同的组件组合在一起.通常,多语言多系统之间的集成是项目开发中一个比较头疼的问题.一般会采用RPC风格或者是REST风格的WebService. ...

  5. 漫画描述HDFS工作原理

    作者不详,内容浅显易懂,特拿来与大家分享.

  6. Haskell语言学习笔记(24)MonadWriter, Writer, WriterT

    MonadWriter 类型类 class (Monoid w, Monad m) => MonadWriter w m | m -> w where writer :: (a,w) -& ...

  7. JAVA数据类型(转载)

    JAVA中值类型的只有short,char,byte,int,long,double,float,boolean八大基本类型,其他的所有类型都是引用类型. 首先我们都知道在编程中赋值运算“=”的意思是 ...

  8. oracle系统视图字段说明

    oracle系统表v$session.v$sql表的列字段说明‍ 在本视图中,每一个连接到数据库实例中的 session都拥有一条记录.包括用户 session及后台进程如 DBWR, LGWR, a ...

  9. js获取地址栏信息

    参考: http://www.w3school.com.cn/jsref/dom_obj_location.asp http://www.xxx.com:8081/ location.host = w ...

  10. BeanFactory 和 ApplicationContext的区别

    今天在网上查资料无意中看到这一行代码 BeanFactory factory = new ClassPathXmlApplicationContext("applicationContext ...