
Java
文章平均质量分 80
BUAA海海
爱阅读爱分享爱航空也爱coding是技术死宅也是忠实驴友我没什么特别我很特别
展开
-
Java中的null对象也可以访问static成员变量和方法
注意:Java中的null对象也可以访问static成员。不过虽然这样的做法没错,却不值得提倡,因为有时会给人带来困扰,我自己在走读代码时就经历过...原创 2014-05-21 23:35:24 · 2981 阅读 · 0 评论 -
畅销书对Java中Iterator的理解误区
最近放假,闲来无事,便翻看以前看过的一些书,竟然发现有些书本(甚至是一些畅销书)对Java中Iterator有很大的误解,比如某畅销书在Collection那一章有这么一句话:“当使用Iterator对集合元素进行迭代时,Iterator并不是把集合元素本身传给了迭代变量,而是把集合元素的值传给了迭代变量,所以修改迭代变量的值对集合元素本身没有任何影响。”但是经过自己实例测试发现根本不是这样!原创 2014-06-02 17:37:07 · 1629 阅读 · 0 评论 -
利用命令行引用外部jar包以使程序正常运行的4种方法
平时写一些小的Java Demo时我比较喜欢用UltraEdit或记事本写完后,直接利用命令行进行编译和运行。这样的好处就是方便快捷。相信有这个习惯的人应该还大有人在。但是如果要引用外部jar包,应该如何操作呢?在写JDBC的一些Demo时,由于要利用jar包来加载相应的数据库,每个Demo都用到了外部jar包,所以特地总结了一下利用命令行引用外部jar包的方法,归纳起来有以下4种:原创 2014-06-15 11:57:10 · 4358 阅读 · 0 评论 -
深刻理解Java中形参与实参,引用与对象的关系
虽然Java中传递的是引用,可以轻易地实现对对象的改变,但是仍然要注意形参与实参、引用与对象的关系,千万不要简单地以为传引用就一定可以实现对象的改变,否则可能犯下低级错误。本文通过实例对比讲解传递引用易犯的错误及正确的使用方法。原创 2014-06-15 16:09:28 · 3953 阅读 · 1 评论 -
Java中的枚举类为何不能有public构造器
从Java 5开始有了枚举类,需要注意的是enum定义的类默认继承的是java.lang.Enum类而不是Object类。同时注意枚举类不能派生子类(类的默认修饰符为final),其原因基于它只有private构造器,那为什么要设计成这样呢?其实很容易想明白,所谓枚举类就是有包含有固定数量实例(并且实例的值也固定)的特殊类,如果其含有public构造器,那么...原创 2014-05-28 02:14:43 · 6671 阅读 · 0 评论 -
Java中内部类揭秘(一):外部类与非静态内部类的”相互可见性“
我们都知道,外部类对非静态内部类是完全透明的,即非静态内部类可以访问外部类包括private成员在内的所有成员,但是,另一个常常被大家忽略的地方是外部类也可以在类的内部通过新建内部类对象来访问非静态内部类包括private在内的所有成员,下面将通过示例进行展示。原创 2014-05-26 21:35:47 · 2045 阅读 · 0 评论 -
Java中初始化块的真实作用
对于普通的类而言,可以放在初始化块中的初始化工作其实完全可以放到构造函数中进行,只不过有时会带来些许不便,如有多个构造器,就要在多个地方加上初始化函数完成初始化工作,而如果放到初始化块中的话则只要写一次即可。显然,使用初始化块的代码比不使用初始化块的代码要更简洁。但是,如果只是这一点便利的话,还不足以使用初始化块,其实初始化块真正体现其独一无二的作用是在匿名内部类中,由于是匿名内部类,因而无法写构造方法,但是很多时候还是要完成相应的初始化工作,这时就需要用到初始化块了,特别是Android中大量地使用匿名内原创 2014-05-27 10:36:18 · 5327 阅读 · 1 评论 -
深刻理解Java中final的作用(一):从final的作用剖析String被设计成不可变类的深层原因
本文主要通过3个例子论述了final修饰基本类型变量及引用变量时的差异,特别是final修饰引用变量时要注意的安全问题,否则容易被黑客利用。最后从前面的例子及博客中讨论Java中String被设计成不可变类的深层次原因原创 2014-05-24 00:02:29 · 4733 阅读 · 0 评论 -
Java中不要在父类的构造方法中调用会被子类重写的方法
在Java中,不要在父类的构造函数中调用会被子类重写的方法,否则运行时会遇到意想不到的错误。原创 2014-05-18 18:09:54 · 9049 阅读 · 4 评论 -
Java中String的比较
说到String的比较,主原创 2014-05-19 23:14:05 · 1827 阅读 · 0 评论 -
深刻理解Java中的String、StringBuffer和StringBuilder的区别
结合自己的一些真实经历讲解String,StringBuffer及StringBuilder原创 2014-05-21 02:00:18 · 2826 阅读 · 4 评论 -
Java中类的初始化块问题(二)
在Java中类的初始化块问题(一)一文中,我已经阐述过Java中的静态初始化块、非静态初始化块及构造函数的执行顺序问题,但是那篇文章中没有涉及类的继承中初始化块的执行顺序,本文将重点探讨。原创 2014-05-18 16:41:25 · 1471 阅读 · 1 评论 -
Java中类的初始化块问题(一)
Java中类进行初始化的地方有两个,一个是构造函数,另一个就是初始化块。而初始化块分为静态初始化块和非静态初始化块,它们都在构造函数之前执行,但是二者略有不同,静态初始化块是在类被加载到内存就开始执行,而非静态初始化块是在创建对象时,构造之前被执行。由以下两个例子即可看出。原创 2014-05-18 12:13:19 · 1837 阅读 · 0 评论 -
Java中的包装类及其注意事项
我们知道,在Java中,除了8原创 2014-05-18 22:17:33 · 2299 阅读 · 1 评论 -
深入分析Java中的I/O类的特征及适用场合
Java中有40多个与输入输出有关的类,如果不理清它们之间的关系,就不能灵活地运用它们。 本文利用EA绘制了I/O相关的类的关系,特别是继承关系示意图,并且对常用的I/O类进行了深入分析,最后,通过10多个实例进行对比...原创 2014-11-17 01:16:19 · 2100 阅读 · 0 评论