当前位置:  技术问答>java相关

"new" 的相关问题

    来源: 互联网  发布时间:2017-04-19

    本文导语:  class M1 { ..... } class M2{ private M1 newM1 = new M1; private M1 newM2; //M1,M2有什么区别? } | 两个类 | M1 newM1 = new M1; 声明了一个指向M1类行的reference,并将它指向一个新创建的M1...

class M1 {
.....
}

class M2{
private M1 newM1 = new M1;
private M1 newM2;
//M1,M2有什么区别?
}

|
两个类

|
M1 newM1 = new M1;
声明了一个指向M1类行的reference,并将它指向一个新创建的M1对象
换种理解,搞诉你这有个遥控器,它控制的是某台彩电
M1 newM2;
仅仅是声明了一个指向M1类型的refernce
这个就只说,这有个遥控器

呵呵,不知道说明白了没有



|
这句话要分开看:
private M1 newM1;
newM1 = new M1();

M1和M2分别是定义的两个类

private M1 newM1;的意思是声明一个"引用"名为newM1,该"引用"的类型是M1,其访问权限是私有的

newM1 = new M1();
构造一个M1的对象( new M1() ),并且将这个对象的内存地址赋值给newM1,这样newM1这个"引用"就指向了刚刚构造的这个对象

|
M1 newM1 = new M1();之后,才为newM1分配了内存单元,才可以对newM1进行操作、访问,而M1 newM2;之后,还没有为newM2分配内存单元,不能对其进行操作、访问,否则编译会报错!

—————————————————————————————————
┏━★━━◆━━★━┓ 
♂欢|◢CSDN◣|使♂        ▲自由保存帖子,浏览,关注检测
┃迎|◥论坛助手◤|用┃        ▲完善的CSDN客户端工具
┗━☆━━◇━━━☆┛       ▲自动添加签名......

让你更快,更爽,更方便地上CSDN...
http://www.csdn.net/expert/topic/573/573604.xml
http://www.chinaok.net/csdn/csdn.zip

|
newM1和newM2都是M1对象的句炳(reference)。
不同的是newM1指向了由new M1()创建的M1对象实例
而newM2则是一个空句炳,它的值为null。
newM1----->|M1实例|
newM2----->null

    
 
 

您可能感兴趣的文章:

  • C++ new/delete相关知识点详细解析
  • 菜鸟问题(对象数组):对于clsA []=new claA[10];语句执行后是否已经拥有了类clsA的10个实例对象,还是要再for i=0 to 9对clsA[i]=new clsA一下?
  • 我是初学者,问一个比较傻的问题:既然JAVA是一种纯面向对象的语言,那么为什么int i=new int()或int i=new int(1)不能通过编译?谢谢。
  • 有关new和delete的问题
  • c++ linux下new 出问题
  • Struct new 问题
  • 有关new File(URI uri)的问题,请各位指点一二!
  • 高分求教!new 操作符的问题。
  • 在pthread function 里面我用new 分配的内存问题 。。。
  • 弱智问题:new和delete必须成对出现吗?
  • 帮帮我菜鸟问题而已 out.println(new Date())错了吗?
  • new几个相同的类,对于方法(method)的内存分配问题?大家公用一块方法的空间,还是每个都有自己的空间?
  • 内核源码map_new_virtual()中的问题
  • IRIX 6.5下使用new分配空间的问题
  • 问个低级的问题:在windows里 有 char * strfilename1 =new char[255];strcpy(strfilename1,"C:\finger2.bmp")的用法,在纯java里怎么写
  • 关于继承的问题SuperClass test = new Sub();
  • 问个低级的问题:我从库里取汉字时候,代码如下:String ls=ob.test(i);String dbstr1= new String(ls.getBytes("ISO-8859-1"),"GBK");
  • 新手问题:关于new的问题?
  • 汉字的问题:我用纯java把汉字从库里取出来显示,代码如下:String dbstr1= new String(ls.getBytes("ISO8859_1"),"gb2312"),可一部分字
  • 线程的问题,可能需要看代码??(new)
  • 基于C# 中可以new一个接口?的问题分析
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • java命名空间java.lang枚举thread.state的类成员方法: new定义及介绍
  • 我如何将read = new BufferedReader(new InputStreamReader(serverIn));从屏幕上打印出来?
  • java命名空间javax.print.attribute.standard类multipledocumenthandling的类成员方法: single_document_new_sheet定义及介绍
  • jb中entitybean的add new finder和add new select有什么不同
  • C++操作符(Operator)用法(new和重载)
  • PHP中new static()与new self()的区别异同分析
  • c/c++中的内存分配 malloc 和 new介绍及相互之间的区别
  • Happy new Year!!!!!!!!!!!!!!!!
  • CSS3 target-new 属性
  • 若和知道一个对象被 new过?
  • Linux编程是否可以用new?
  • Button bn=new Button("OK");怎么会报错?
  • 请教各位关于 new
  • 关于new的疑惑..
  • 在new ImageIcon()中使用相对路径怎么没有用?
  • 如何得到自己被谁new了?
  • 新手提问 在线等待,为什么我的程序中 new 操作符出错?
  • 关于QT中的new和delete
  • linux 频繁new/delete 内存持续增长
  • 居然不识别new操作符,这是怎么回事呢?
  • C++用new创建对象和不用new创建对象的区别解析


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3