06 2012 档案
摘要:当程序需要一个特定于语言环境的资源时(如 String),程序可以从适合当前用户语言环境的资源包中加载它。使用这种方式,可以编写很大程度上独立于用户语言环境的程序代码,它将资源包中大部分(即便不是全部)特定于语言环境的信息隔离开来。 这个很像Delphi语言中的ResourceString。这使编写的程序可以: 轻松地本地化或翻译成不同的语言一次处理多个语言环境以后可以轻松进行修改,以便支持更多的语言环境 这个类的作用就是读取资源属性文件(properties),然后根据.properties文件的名称信息(本地化信息),匹配当前系统的国别语言信息(也可以程序指定),然后获取相应的prop..
阅读全文
摘要:如果一个程序只含有数量固定的对象,而且已知它们存在的时间,那这个程序时相当简单的。 数组 容纳对象有很多方式,数组是其中最为普遍的一种,它主要有如下两个特点:效率和类型。对于Java来说,为保存和访问一系列对象(实际是对象的句柄),最有效率的方法莫过于数组。数组实际是一个简单的线性序列,因此访问速度非常的快,但是它也存在一些限制,如数组的大小是固定的,并且不可以在“存在时间”内发生改变。 对...
阅读全文
摘要:“Java引人注目的一项特性是代码的重复使用或者再生。但最具革命意义的是,除代码的复制和修改以外,我们还能做多得多的其他事情。” 使用别人已经创建好并调试好的类来创建新类,主要有如下两种办法:(1)在新类里简单地创建原有类的对象,这叫“合成”;(2)原样采取现有类的形式,并在其中添加新的代码来创建一个新类,叫“继承”。 继承与Java(以及其它OOP语言)非常紧密的结合在一起。创建一个类的时候...
阅读全文
摘要:在面向对象的设计过程中,一个非常重要的一点就是要将发生变化的东西和保持不变的东西分隔开。包是Java中一个很重要的概念,在用Java进行软件开发的时候,经常会使用到包,不同的包里面可能会存在名字相同的类,因此要注意冲突处理。正是由于这种潜在的名字冲突,因此要对Java中的命名空间进行完整的控制。创建Java源码文件的时候,通常叫一个编辑单元(编译单元),它必须以.java作为文件名的后缀,并且编译单元里只有一个public类,它必须与编译文件有相同的名字(包括大小写)。编译一个.Java文件时,会生成一系列.class文件,对应于.Java文件中的每个类。这样最终从少量的.,Java文件中得到
阅读全文
摘要:随着计算机的进步,“不安全”的程序设计已经成为造成编程代价高昂的罪魁祸首之一。C++中引入了构造器的概念,在对象创建的过程中调用。Java中也沿用这种概念,但新增了自己的“垃圾收集器”,能在资源不再需要的时候自动释放他们。用构造器自动初始化Java中由于构造器的存在,可以确保每个类的对象都能正确的初始化。Java中构造器与类名相同,其原因有二:(1)我们使用的任何名字都有可能和打算作为类成员的名字相冲突;(2)由于编译器要调用构造器,所以它必须知道要调用的是哪个方法。构造器的名字跟类名相同就能很好地解决上面两个问题,这一点跟Delphi中用Create作为构造器的名字有异曲同工之妙。需要注意的
阅读全文
摘要:用句柄操纵对象在Java里,任何东西都被看成了对象,但是用户实际操作的是指向对象的句柄。创建一个句柄时,无论如何都要初始化,否则在使用的时候会出现错误。Java数据保存的地方(1)寄存器:寄存器是最快的保存区域,因为它位于处理器的内部。但是寄存器的数量有限,故它只能由编译器根据需要进行分配,用户是无法直接跟寄存器打交道的。(2)堆栈:驻留于常规RAM(随机访问存储器)区域,但可通过它的“堆栈指针”获得处理的直接支持。堆栈指针向下移动,会创建新的内存;若向上移动,则会释放那些内存。这是一种特别快、特别有效的数据保存方式,仅次于寄存器。Java对象的句柄一般保存在堆栈里,但是Java对象一般不保存
阅读全文
摘要:“纯粹”的面向对象程序设计方法 (1) 所有东西都是对象。可将对象想象成一种新型变量;它保存着数据,但可要求它对自身进行操作。理论上讲,可从要解决的问题身上提出所有概念性的组件,然后在程序中将其表达为一个对象。 (2) 程序是一大堆对象的组合;通过消息传递,各对象知道自己该做些什么。为了向对象发出请求,需向那个对象“发送一条消息”。更具体地讲,可将消息想象为一个调用请求,它调用的是从属于目标对...
阅读全文

浙公网安备 33010602011771号