Android开发技术分享kmpAndroid开发

你真的懂引用与对象?

2016-11-30  本文已影响17人  麦兜叮叮当

解释一个误解

如下表达式:

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;

上一篇下一篇

猜你喜欢

热点阅读