Practical Java (一)关于reference】的更多相关文章

题记: 花了一周把Peter Haggar的<practical Java>看了遍,有所感悟,年纪大了, 写下笔记,方便日后查看.也希望有缘之人可以看看,做个渺小的指路人. 不足之处还望指正. 概述: 全书分为六个部分,包括一般技术.对象与相等性.异常处理.性能.多线程.对象. 一般技术:举例了几个java常见错误用法的说明和解释,诸如array和vector的选择,多态与instanceof等等 对象和相等性则:针对equals的详细说明,是迄今本人见过对equals理解最深的一本书了,其中…
Practice 1, 4, 7, 8 1. 参数传递:by value or by reference 变量型别:reference 和 primitive Java中的变量分为两种:reference type和primitive type(built-in type) 只有少数最常用的变量是primitive type,这些primitive type又会有对应的外覆类(wrapper class) primitive types wrapper class boolean Boolean…
所谓引用传递就是指将堆内存空间的使用权交给多个栈内存空间. 例子<1> public class Aliasing { int temp = 30; public static void main(String[] args) { // TODO 自动生成的方法存根 Aliasing d1 = new Aliasing(); d1.temp = 50; System.out.println(d1.temp); fun(d1); System.out.println(d1.temp); } pu…
声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将追究法律责任!原文链接:http://www.cnblogs.com/jiangzhengjun/p/4259259.html 实践1.    参数是以by value方式而非by reference方式传递 一个普通存在的误解是:java中的参数是以 by value 方式传递.其实不是这样的,参…
这两天又重新学习了一下Reference,根据网上的资源做了汇总. Java中的引用主要有4种: 强引用 StrongReference: Object obj = new Object(); obj就为一个强引用,obj=null后, 该对象可能会被JVM回收 软引用 SoftReference: 在内存不够用的时候,才会回收软引用的对象. Object obj = new Object(); SoftReference<Object> softref = new SoftReference…
//看之前先要知道java里面的四种引用.package com.zby.ref; import sun.misc.Cleaner; /** * 引用对象的抽象基础类.这个类定义了所有引用对象的公共操作.因为引用对象在跟垃圾收集器紧密合作中被实现,所以这个类不能被引用对象直接继承. * * @author zhoubaiyun * * @param <T> */ public abstract class Reference<T> { /* * 一个引用实例是在这四个可能的内部状态…
Java 2 平台引入了 java.lang.ref 包,这个包下面包含了几个Reference相关的类,Reference相关类将Java中的引用也映射成一个对象,这些类还提供了与垃圾收集器(garbage collector)之间有限的交互. Reference引用类的几种类型 在jvm中,一个对象如果不再被使用就会被当做垃圾给回收掉,判断一个对象是否是垃圾,通常有两种方法:引用计数法和可达性分析法.不管是哪一种方法判断一个对象是否是垃圾的条件总是一个对象的引用是都没有了. JDK.1.2…
Practice 2,3 final 作用于by value变量时,一旦赋值不可更改 作用于by reference变量时,一旦不能指向第二个对象,但是可以改变对象的内容.比如不可以第二次=new xx(): 作用于函数时,该函数不能被subclass覆写 作用于class时,改class内所有函数必须是final…
这个话题一直是Java程序员的一个热议话题,争论不断,但是不论是你百度搜也好还是去看官方的文档中所标明的也好,得到的都只有一个结论:Java只有值传递. 在这里就不贴代码细致解释了,让我们来看看一些论据: 1. "Java总是值传递的.不幸的是,他们(sun)决定称 '一个对象的地址' 为 '引用'.当我们传递一个对象的值的时候,我们传递的是他的引用.这会迷惑初学者." 2. "问题的关键是,'引用'这个词在表达'通过引用传递'时有着与我们通常在Java中的'引用'一词完全不…
定义 Reference是所有引用类型的父类,定义了引用的公共行为和操作. reference指代引用对象本身,referent指代reference引用的对象,下文介绍会以reference,referent形式出现. 说明 Reference类与垃圾回收是密切配合的,所以该类不能被直接子类化.简单来讲,Reference的继承类都是经过严格设计的,甚至连成员变量的先后顺序都不能改变,所以在代码中直接继承Reference类是没有任何意义的.但是可以继承Reference类的子类. 例如:Fi…