java的引用:用C++/C的引用和指针去理解

引用和C++的引用的概念基本一样,但是也有一些易错点:

static class ElementPara{
    String name = new String();
    String func = new String();
}
List<ElementPara> element_list = new ArrayList<>();
element_list.add(element_tmp);
element_tmp.name = new String(); // 会直接改变element_list里的值。
element_tmp = new ElementPara(); // 不会改改变element_list里的值。
从中,可以看出,如果用C++/C的引用和指针去理解,就完全没有问题了,一切都可以解决的清楚。

比如, String name  可以理解为定义了一个指针。

name = new String(), 可以理解为分配了内存(堆)给这个指针。

 

 

posted on 2020-12-16 13:57  lizhuohui  阅读(62)  评论(0编辑  收藏  举报

导航