Think in Java
被天上的包子砸晕
非常菜的菜鸟
展开
-
类型转换
窄化转换(narrowing conversion) 在Java中,类型转换时一种比较安全的操作,在执行窄化转换的时候,见能够容纳更多信息的数据类型转换为无法容纳那么多信息的数据,自然会丢失数据。例如(double 14.02 转换为int类型,直接截取后面的小数点,为14,这样就丢失的小数点后面的数据信息)。尽管数据信息会丢失,编译器会强制我们执行那样的转换。扩展转换(wideing con原创 2017-08-16 15:28:33 · 886 阅读 · 0 评论 -
Daemon后台线程
后台线程(daemon) 所谓后台线程(daemon),是指程序在运行时提供的一种通用线程服务,这种线程并不属于程序中不可或缺的部分。因此,所有的非后台线程结束后,程序也就会终结所有的线程,同时会杀死所有的后台现场。也就是说,程序中只要有后台线程还在运行,那么程序就不会终止。比如,执行main()方法就是一个非后台线程。public class DaemonThread implem...原创 2018-06-19 15:02:34 · 1026 阅读 · 0 评论 -
I/O流
Reader和Writer 基于InputStream和OutputStream的新类。基于适配器模式,相应的InputStream类可以转换为InputStreamReader,OutputStream同样可以转换为OutputStreamWriter目的 设计它的目的在于为了国际化。老的I/O流继承层次结构仅仅支持8位字节流,不能很好地处理16位字节流。由于Unicode...原创 2018-06-02 17:52:58 · 209 阅读 · 0 评论 -
Hash散列
为了速度而散列 HashMap速度总所周知是非常快的,但是为什么会这么快,是因为它的散列技术,下面简单理解一下散列知识 散列的价值在于速度,使得查询得以快速。一般容器查询的速度的瓶颈位于键的查询,采取的做法一般是对键进行排序,但散热则不是散列的特点 散列的做法,通常把键保存到某个地方,存储一组元素最快的数据结构就是数组,所以用它来保存键的信息(不是键本身),但是由于...原创 2018-05-21 16:01:01 · 508 阅读 · 0 评论 -
多态
多态是Java中比较重要的概念。 继承:从字面理解就是一种层次联结模型。有些说法说是,鼓励类的重用,更加符合新手的说法,就是。在现有的类的基础上(基类),创建的新类继承这个基类,从而拥有基类的属性和自己的属性。 多态意味着“不同的形式”。在面向对象的设计中,我们拥有从基类中继承的不同子类,以及使用接口的不同形式,不同的动态绑定方法。动态绑定class Task{ void原创 2017-09-12 16:54:06 · 274 阅读 · 0 评论 -
组合和继承
组合与继承都允许在新的类中放置子对象,组合是显示的这样做,继承是隐式的做。组合技术 组合技术实在新类中使用现有的类的功能而非他的接口这种情形。在新类中嵌入某个对象,让其实现需要的功能。但是新类中的用户看到的只是新类所定义的接口,而非嵌入对象的接口。未取得此效果,需要在新类中嵌入一个现有的类,用private修饰。public class Engine{ pri...原创 2017-09-11 17:42:18 · 357 阅读 · 0 评论 -
垃圾回收器
简介 Java的垃圾回收器是怎么进行回收的呢?总所周知,Java中所有的对象的实例都是在堆中分配内存,每一个方法的创建执行都会创建一个栈帧,这就是栈。把所有的实例都存放在对中,这个代价无疑是十分高昂的。堆 Java的堆为对象分配对象时,会有一个指针,这个指针指向空闲的内存区域,只是简单的移动到未分配的区域为实例分配地址。在不断地分配内存过程中,必然也要有一个管理内存区域的地方,这就是Jav原创 2017-09-05 15:34:24 · 340 阅读 · 0 评论 -
持有对象的管理(容器)
Collection Collection 存放单一的对象,Map存放键值对。你可以用泛型制定插入的类型。使用的泛型的好处是在获取,插入对象的时候,不必为类型的转换而烦恼。Map 特性:key-value,键值对,用的非常多,能够在开发中解决很多问题。使用的比较频繁的是HashMap和HashSet,基于散列的存放,性能也比较好。List 基于数组,建立数字索引与对象的关联,因为Li原创 2017-09-15 17:42:48 · 375 阅读 · 0 评论 -
内部类
在书上看到关于内部类的东西,发现自己以前有一些理解错误了上代码:public class Parce17{ public Contents contents(){ //这里的new Contents()并非是创建一个Contents对象,而是创建一个继承Contents的匿名类(只是这个匿名类没有名字而已),最终返回的是Contents的引用(向上转型) retur原创 2017-09-13 19:17:42 · 356 阅读 · 0 评论 -
线程中断innterrupt(未完结)
中断注意事项public class WaxOMatic { public static void main(String[] args) throws InterruptedException { Car car = new Car(); ExecutorService s = Executors.newFixedThreadPool(2); ...原创 2018-06-28 14:29:05 · 402 阅读 · 0 评论