你真的懂引用与对象?

解释一个误解

如下表达式:

A  a = new A();

这个表达式代表A是类名,a不是对象,new A()才是对象!a引用指向new A()的对象。我们平常通过书本上理解到的以及平时提起的对象对默认当做了a。

在java中,“=”通常被称为赋值,其实严格意义上来说这是不严谨的,会给我们带来误解,它实际的执行过程是将右边的对象传给左边的引用,这个过程其实是在传递地址。java看似没有指针的概念,大大降低了学习java的门槛,其实我们的引用就是一个指针,它指向我们的地址。再如:

A  a;

A是类名,a是引用,a所指向的对象为空null;

a1 = a2;

a1和a2都是引用,这个表达式的意思是把a2所指向的对象的地址传递给a1;

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 32,091评论 18 399
  • 小编费力收集:给你想要的面试集合 1.C++或Java中的异常处理机制的简单原理和应用。 当JAVA程序违反了JA...
    八爷君阅读 10,198评论 1 114
  • 情人节,朋友圈晒恩爱,晒礼物,也有晒失落,晒心酸的。女人都是无一例外,总是期待情人在这个特别的日子给自己一份惊喜,...
    红尘喧嚣阅读 3,401评论 0 2
  • 抽空去看了看南京大屠杀纪念馆,感触最深的,不仅是死了30万同胞,还有就是那时中国的落后程度,当日本鬼子拿着比...
    我就是要说阅读 1,878评论 0 0
  • 放暑假了,时间充裕起来了,平时三点一线,累得不想动,再加上有了网购,能买的几乎都在网上买了。上街也只是买些...
    许邦峻阅读 2,924评论 0 1