
Java
Onlyarticle
这个作者很懒,什么都没留下…
展开
-
Hashtable和HashMap的区别
Hashtable和HashMap的区别:1.Hashtable是Dictionary的子类,HashMap是Map接口的一个实现类;2.Hashtable中的方法是同步的,而HashMap中的方法在缺省情况下是非同步的。即是说,在多线程应用程序中,不用专门的操作就安全地可以使用Hashtable了;而对于HashMap,则需要额外的同步机制。但HashMap的同步问题可通过Collect转载 2008-10-16 08:15:00 · 549 阅读 · 0 评论 -
Java对象排序的3种实现方法
/** * Java对象排序的3种实现方式 * @author zhangwenzhang * */public class TestObjectSort { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub原创 2008-11-14 21:45:00 · 1044 阅读 · 0 评论 -
Java初始化的顺序
Java初始化的顺序其顺序如下:1. 父类静态成员和静态初始化块 ,按在代码中出现的顺序依次执行2. 子类静态成员和静态初始化块 ,按在代码中出现的顺序依次执行3. 父类实例成员和实例初始化块 ,按在代码中出现的顺序依次执行4. 父类构造方法5. 子类实例成员和实例初始化块 ,按在代码中出现的顺序依次执行6. 子类构造方法原创 2008-11-09 15:24:00 · 574 阅读 · 0 评论 -
正确使用 volatile 变量
Java™ 语言包含两种内在的同步机制:同步块(或方法)和 volatile 变量。这两种机制的提出都是为了实现代码线程的安全性。其中 Volatile 变量的同步性较差(但有时它更简单并且开销更低),而且其使用也更容易出错。在这期的 Java 理论与实践 中,Brian Goetz 将介绍几种正确使用 volatile 变量的模式,并针对其适用性限制提出一些建议。转载 2008-11-09 22:21:00 · 615 阅读 · 0 评论 -
Java关键字之native,strictfp,transient,volatile
Java关键字(keywords)abstract default if private thisboolean do implements protected throwbreak double import public throwsbyte转载 2008-11-09 22:18:00 · 635 阅读 · 0 评论 -
Java多核线程笔记-volatile的原理与技巧
volatile, 用更低的代价替代同步为什么使用volatile比同步代价更低?同步的代价, 主要由其覆盖范围决定, 如果可以降低同步的覆盖范围, 则可以大幅提升程序性能. 而volatile的覆盖范围仅仅变量级别的. 因此它的同步代价很低.volatile原理是什么?volatile的语义, 其实是告诉处理器, 不要将我放入工作内存, 请直接在主存操作我.(工作内存详见java内存模型)因此转载 2008-11-09 22:23:00 · 620 阅读 · 0 评论 -
关于覆盖与隐藏
public class TestExtends { public static void main(String [] args){ IDog d1 = new Dog(); d1.check(); IDog d2 = new BullDog(); d2.check(); Dog d3 = (Dog)d2;原创 2008-11-02 19:38:00 · 603 阅读 · 0 评论 -
Java同步机制的应用
基本概念: 每个Object都会有1个锁. 同步就是串行使用一些资源.(说明:以下有些例子为了突出重点,省略了不必要的代码.特别是省掉了一些成员变量,就是需要同步的对象.)1. 多线程中对共享、可变的数据进行同步. 对于函数中的局部变量没必要进行同步. 对于不可变数据,也没必要进行同步. 多线程中访问共享可变数据才有必要.2. 单个线程中可以使用synchroni转载 2008-10-12 19:45:00 · 587 阅读 · 0 评论 -
Java基础之 与equals()如影随行的hashCode()
Java基础之 与equals()如影随行的hashCode() 上一篇文章我们谈到了equals()的重写,接下来我们说说与equals()关系紧密的hashCode(),这从标题就可窥见一斑。 hashCode()返回该对象的哈希码值,该值通常是一个由该对象的内部地址转换而来的整数,它的实现主要是为了提转载 2008-10-11 12:49:00 · 1417 阅读 · 0 评论 -
Java 1.5新特性简介
jdk 1.5新特性说明 “JDK1.5”的一个重要主题就是通过新增一些特性来简化开发,这些特性包括泛型,for-each 循环,自动装包/拆包,枚举,可变参数, 静态导入 。使用这些特性有助于我们编写更加清晰,精悍,安全的代码。 一. 首先简单介绍一下各种特性及其使用 1.泛型(Generic)C++通过模板技术可以指定集合的元素类型,而Ja转载 2008-10-10 22:55:00 · 6602 阅读 · 0 评论 -
java中的transient(转载)
过客不过如此test,结束了,就离开//学会平淡看待 document.getElementById("blogbrief").innerHTML="test,结束了,就离开/r/n//学会平淡看待"; sample0.cublog.cn 首页 | 文章 | 相册 | 收藏夹 | 留言java中的transient(转载)Java中的transient转载 2008-10-09 15:51:00 · 916 阅读 · 0 评论 -
关于this和super的区别(转载)
先看下面一段代码,比较短,//父类 class FatherClass { public int value; public void f() { this.run();//注意这儿的是this,注意 } public void run(){ System.out.println("FatherClass.run():"+this.转载 2008-09-27 12:41:00 · 4648 阅读 · 0 评论 -
关于 new String("xyz")创建几个对象的理解
我们先看一个最简单的程序view plaincopy to clipboardprint?public class T { private String str = "###########JAVA2000#####################"; public void test() { String s = "@@@@@@@@@@JAVA2000@@@@@@转载 2008-10-16 07:59:00 · 618 阅读 · 0 评论 -
面向对象的三个基本特征(讲解)
面向对象的三个基本特征(讲解)面向对象的三个基本特征是:封装、继承、多态。封装封装最好理解了。封装是面向对象的特征之一,是对象和类概念的主要特性。封装,也就是把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏。继承面向对象编程 (OOP) 语言的一个主要功能就是“继承”。继承是指这样一种能力:它可以使用现有类的所有功转载 2008-11-22 20:23:00 · 954 阅读 · 1 评论