读《疯狂Java讲义》笔记总结三
1.初始化块
实际上初始化块是一个假象,使用javac命令编译Java类后,该Java类中的初始化块会消失——初始化块中代码会被 “还原” 到每一个构造器中,且位于构造器全部代码的前面。
2.p125-p128 自己主动装箱,自己主动拆箱不太懂
3.包装类
4.单例类
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
实例:
//提供一个静态方法。用于返回Singleton实例
//该方法能够增加自己定义控制。保证仅仅产生一个singleton对象
public static Singleton getInstance() { //假设instance为null。则表明还不曾创建Singleton对象
//假设instance不为null。则表明已经创建了Singleton对象
//将不会又一次创建新的实例
if (instance == null)
{
//创建一个Singleton对象。并将其缓存起来
instance = new Singleton ();
}
return instance;
}
5.final修饰基本类型变量和引用类型变量的差别
当使用final修饰基本类型变量时。不能对基本类型变量又一次赋值。因此基本类型变量不能被改变,但对于引用类型变量而言,它保存的不过一个引用,final只保证这个引用类型变量所引用的地址不会发生改变,即一直引用同一个对象,但这个对象全然能够发生改变。
6.可运行“宏替换”的final变量
对于一个final变量来说。无论它是类变量、实例变量,还是局部变量。仅仅要该变量满足三个条件,这个final变量就不再是一个变量,而是相当于一个直接量。
- 使用final修饰符修饰
- 在定义该final变量时指定了初始值
- 该初始值能够在编译时就被确定下来
读《疯狂Java讲义》笔记总结三的更多相关文章
- 疯狂java讲义--笔记
第一章.Java语言概述与开发环境 什么是软件:一系列按照特定顺序组织的计算机数据和指令的集合: 交互方式:两种 GUI(Graphical User Interface) 图像界面 .CLI (Co ...
- 疯狂java讲义笔记 2.3.7
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools=&q ...
- 《疯狂java讲义》笔记 1-5章
1.编译语言和解释语言理解,摘自李刚老师的<疯狂Java讲义>第三版: 就是说,Java和.net都是编译型有事解释型语言.编译型就是根据不同平台编译成不同的可执行机器码,编译过程中会进行 ...
- 0038 Java学习笔记-多线程-传统线程间通信、Condition、阻塞队列、《疯狂Java讲义 第三版》进程间通信示例代码存在的一个问题
调用同步锁的wait().notify().notifyAll()进行线程通信 看这个经典的存取款问题,要求两个线程存款,两个线程取款,账户里有余额的时候只能取款,没余额的时候只能存款,存取款金额相同 ...
- 疯狂java讲义 第三版 笔记
java7新加特性: 0B010101 二进制数 int c=0B0111_1111; 数值中使用下划线分隔 switch 支持String类型 字符串常量放在常量池 String s0 ...
- 读《疯狂Java讲义》笔记总结一
最近在读<疯狂Java讲义>,现把其中遇到的一些自己以前没掌握的点儿记录下来. 1.字符串相关 字符串不是基本类型,字符串是一个类,也就是一个引用类型. 字符串转int类型String a ...
- java8--集合(疯狂java讲义3复习笔记)
1.集合分四类:set,map,list,queue 位于java.util包下. 集合类和数组的区别,数组可以保存基本类型的值或者是对象的引用,而集合里只能保存对象的引用. 集合类主要由两个接口派生 ...
- 疯狂JAVA讲义第三章之数组篇
package test; /** * Desription: * @author orangebook *<br/>网站:<a href="http://www.cr ...
- udp协议基础(转自疯狂java讲义)
第17章 网络编程 17.4 基于UDP协议的网络编程 UDP协议是一种不可靠的网络协议,它在通信实例的两端各建立一个Socket,但这两个Socket之间并没有虚拟链路,这两个Socket只是发 ...
- 《疯狂Java讲义》(一) ---- 关于学习Java的反思
"听到Spring很火,就立马买来一本Spring的书来读,最后结果往往是失败,因为这种学习没有积累,没有根基,学习过程中困难重重,每天都被一些相同.类似的问题所困扰,起初热情十足,经常上论 ...
随机推荐
- [错误解决]UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-3: ordinal not in range(128)
python2内容无法写入csv,报错:UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-3: ordin ...
- hdu1595 最短路问题(dijkstra&&spfa)
find the longest of the shortest Time Limit: 1000/5000 MS (Java/Others) Memory Limit: 32768/32768 ...
- how to write an front-end framework by using vanilla JavaScript?
how to write an front-end framework by using vanilla javascript? https://www.quora.com/How-can-I-mak ...
- java中static变量和方法的总结
转自:http://blog.csdn.net/haobo920/article/details/5921621 java中static变量和方法的总结 java中一切皆是对象 一个类中对象的定义一般 ...
- 【CF652C】Foe Pairs(线性扫描)
题意:给你1-n的一个排列和m组数对,问有多少区间不包含任意一个数对. (1 ≤ n, m ≤ 3·105) 思路:数据范围过大,不能用容斥原理 f[i]表示以位置i上的数为左端点,右端点最小到哪里 ...
- Mac下Android SDK更新不了的解决办法
在hosts文件中加入: 203.208.46.146 dl.google.com 203.208.46.146 dl-ssl.google.com
- yii批量插入数据
现在有如下数据: 查看代码 打印 1 $user=array( 2 0=>array('id'=>1,'name'=>'张三'), 3 0=>array(' ...
- 编译 Android 版本的 Opus 音频编解码库的方法
Opus 音频编解码库是 Speex 音频编解码库的下一代版本,从编解码性能以及质量上来讲都有了长足的进步.Opus 的编译非常简单,但是官方并未给出详细的 Android 版本编译指南,查找了大量资 ...
- AC日记——三连击 洛谷 P1008
题目背景 本题为提交答案题,您可以写程序或手算在本机上算出答案后,直接提交答案文本,也可提交答案生成程序. 题目描述 将1,2,…,9共9个数分成三组,分别组成三个三位数,且使这三个三位数构成1:2: ...
- PythonWeb开发教程(二),搭建第一个django项目
这篇写怎么创建django项目,以及把django项目运行起来. 1.创建django项目 a.使用命令创建,安装完django之后就有django-admin命令了,执行命令创建即可,命令如下: ...