﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>语源科技BlogJava-tianlang952</title><link>http://www.blogjava.net/tianlang952/</link><description /><language>zh-cn</language><lastBuildDate>Sun, 12 Apr 2026 06:05:26 GMT</lastBuildDate><pubDate>Sun, 12 Apr 2026 06:05:26 GMT</pubDate><ttl>60</ttl><item><title>编程序常用英语单词</title><link>http://www.blogjava.net/tianlang952/archive/2009/06/21/283443.html</link><dc:creator>Eric--952</dc:creator><author>Eric--952</author><pubDate>Sun, 21 Jun 2009 04:02:00 GMT</pubDate><guid>http://www.blogjava.net/tianlang952/archive/2009/06/21/283443.html</guid><wfw:comment>http://www.blogjava.net/tianlang952/comments/283443.html</wfw:comment><comments>http://www.blogjava.net/tianlang952/archive/2009/06/21/283443.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/tianlang952/comments/commentRss/283443.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/tianlang952/services/trackbacks/283443.html</trackback:ping><description><![CDATA[<div id="articleContent">application 应用程式 应用、应用程序 <br />
application framework 应用程式框架、应用框架 应用程序框架 <br />
architecture 架构、系统架构 体系结构 <br />
argument 引数（传给函式的值）。叁见 parameter 叁数、实质叁数、实叁、自变量 <br />
array 阵列 数组 <br />
arrow operator arrow（箭头）运算子 箭头操作符 <br />
assembly 装配件 <br />
assembly language 组合语言 汇编语言 <br />
assert(ion) 断言 <br />
assign 指派、指定、设值、赋值 赋值 <br />
assignment 指派、指定 赋值、分配 <br />
assignment operator 指派（赋值）运算子 = 赋值操作符 <br />
associated 相应的、相关的 相关的、关联、相应的 <br />
associative container 关联式容器（对应 sequential container） 关联式容器 <br />
atomic 不可分割的 原子的 <br />
attribute 属性 属性、特性 <br />
audio 音讯 音频 <br />
A.I. 人工智慧 人工智能 <br />
background 背景 背景（用於图形着色） <br />
后台（用於行程） <br />
backward compatible 回溯相容 向下兼容 <br />
bandwidth 频宽 带宽 <br />
base class 基础类别 基类 <br />
base type 基础型别 (等同於 base class) <br />
batch 批次（意思是整批作业） 批处理 <br />
benefit 利益 收益 <br />
best viable function 最佳可行函式 最佳可行函式 <br />
（从 viable functions 中挑出的最佳吻合者） <br />
binary search 二分搜寻法 二分查找 <br />
binary tree 二元树 二叉树 <br />
binary function 二元函式 双叁函数 <br />
binary operator 二元运算子 二元操作符 <br />
binding 系结 绑定 <br />
bit 位元 位 <br />
bit field 位元栏 位域 <br />
bitmap 位元图 位图 <br />
bitwise 以 bit 为单元逐一┅ <br />
bitwise copy 以 bit 为单元进行复制；位元逐一复制 位拷贝 <br />
block 区块,区段 块、区块、语句块 <br />
boolean 布林值（真假值，true 或 false） 布尔值 <br />
border 边框、框线 边框 <br />
brace(curly brace) 大括弧、大括号 花括弧、花括号 <br />
bracket(square brakcet) 中括弧、中括号 方括弧、方括号 <br />
breakpoint 中断点 断点 <br />
build 建造、构筑、建置（MS 用语） <br />
build－in 内建 内置 <br />
bus 汇流排 总线 <br />
business 商务,业务 业务 <br />
buttons 按钮 按钮 <br />
byte 位元组（由 8 bits 组成） 字节 <br />
cache 快取 高速缓存 <br />
call 呼叫、叫用 调用 <br />
callback 回呼 回调 <br />
call operator call（函式呼叫）运算子调用操作符 <br />
（同 function call operator） <br />
candidate function 候选函式 候选函数 <br />
（在函式多载决议程序中出现的候选函式） <br />
chain 串链（例 chain of function calls） 链 <br />
character 字元 字符 <br />
check box 核取方块 (i.e. check button) 复选框 <br />
checked exception 可控式异常(Java) <br />
check button 方钮 (i.e. check box) 复选按钮 <br />
child class 子类别（或称为derived class, subtype） 子类 <br />
class 类别 类 <br />
class body 类别本体 类体 <br />
class declaration 类别宣告、类别宣告式 类声明 <br />
class definition 类别定义、类别定义式 类定义 <br />
class derivation list 类别衍化列 类继承列表 <br />
class head 类别表头 类头 <br />
class hierarchy 类别继承体系, 类别阶层 类层次体系 <br />
class library 类别程式库、类别库 类库 <br />
class template 类别模板、类别范本 类模板 <br />
class template partial specializations <br />
类别模板偏特化 类模板部分特化 <br />
class template specializations <br />
类别模板特化 类模板特化 <br />
cleanup 清理、善后 清理、清除 <br />
client 客端、客户端、客户 客户 <br />
client－server 主从架构 客户/服务器 <br />
clipboard 剪贴簿 剪贴板 <br />
clone 复制 克隆 <br />
collection 群集 集合 <br />
combo box 复合方块、复合框 组合框 <br />
command line 命令列 命令行 <br />
(系统文字模式下的整行执行命令) <br />
communication 通讯 通讯 <br />
compatible 相容 兼容 <br />
compile time 编译期 编译期、编译时 <br />
compiler 编译器 编译器 <br />
component 组件 组件 <br />
composition 复合、合成、组合 组合 <br />
computer 电脑、计算机 计算机、电脑 <br />
concept 概念 概念 <br />
concrete 具象的 实在的 <br />
concurrent 并行 并发 <br />
configuration 组态 配置 <br />
connection 连接，连线（网络,资料库） 连接 <br />
constraint 约束（条件） <br />
construct 构件 构件 <br />
container 容器 容器 <br />
（存放资料的某种结构如 list, vector...） <br />
containment 内含 包容 <br />
context 背景关系、周遭环境、上下脉络 环境、上下文 <br />
control 控制元件、控件 控件 <br />
console 主控台 控制台 <br />
const 常数（constant 的缩写，C++ 关键字） <br />
constant 常数（相对於 variable） 常量 <br />
constructor（ctor） 建构式 构造函数 <br />
（与class 同名的一种 member functions） <br />
copy (v) 复制、拷贝 拷贝 <br />
copy (n) 复件, 副本 <br />
cover 涵盖 覆盖 <br />
create 创建、建立、产生、生成 创建 <br />
creation 产生、生成 创建 <br />
cursor 游标 光标 <br />
custom 订制、自定 定制 <br />
data 资料 数据 <br />
database 资料库 数据库 <br />
database schema 数据库结构纲目 <br />
data member 资料成员、成员变数 数据成员、成员变量 <br />
data structure 资料结构 数据结构 <br />
datagram 资料元 数据报文 <br />
dead lock 死结 死锁 <br />
debug 除错 调试 <br />
debugger 除错器 调试器 <br />
declaration 宣告、宣告式 声明 <br />
deduction 推导（例：template argument deduction） 推导、推断 <br />
default 预设 缺省、默认 <br />
defer 延缓 推迟 <br />
define 定义 预定义 <br />
definition 定义、定义区、定义式 定义 <br />
delegate 委派、委托、委任 委托 <br />
delegation （同上） <br />
demarshal 反编列 散集 <br />
dereference 提领（取出指标所指物体的内容） 解叁考 <br />
dereference operator dereference（提领）运算子 * 解叁考操作符 <br />
derived class 衍生类别 派生类 <br />
design by contract 契约式设计 <br />
design pattern 设计范式、设计样式 设计模式 <br />
※ 最近我比较喜欢「设计范式」一词 <br />
destroy 摧毁、销毁 <br />
destructor 解构式 析构函数 <br />
device 装置、设备 设备 <br />
dialog 对话窗、对话盒 对话框 <br />
directive 指令（例：using directive） (编译)指示符 <br />
directory 目录 目录 <br />
disk 碟 盘 <br />
dispatch 分派 分派 <br />
distributed computing 分布式计算 (分布式电算) 分布式计算 <br />
分散式计算 (分散式电算) <br />
document 文件 文档 <br />
dot operator dot（句点）运算子 . (圆)点操作符 <br />
driver 驱动程式 驱动（程序） <br />
dynamic binding 动态系结 动态绑定 <br />
efficiency 效率 效率 <br />
efficient 高效 高效 <br />
end user 终端用户 <br />
entity 物体 实体、物体 <br />
encapsulation 封装 封装 <br />
enclosing class 外围类别（与巢状类别 nested class 有关）外围类 <br />
enum (enumeration) 列举（一种 C++ 资料型别） 枚举 <br />
enumerators 列举元（enum 型别中的成员） 枚举成员、枚举器 <br />
equal 相等 相等 <br />
equality 相等性 相等性 <br />
equality operator equality（等号）运算子 == 等号操作符 <br />
equivalence 等价性、等同性、对等性 等价性 <br />
equivalent 等价、等同、对等 等价 <br />
escape code 转义码 转义码 <br />
evaluate 评估、求值、核定 评估 <br />
event 事件 事件 <br />
event driven 事件驱动的 事件驱动的 <br />
exception 异常情况 异常 <br />
exception declaration 异常宣告（ref. C++ Primer 3/e, 11.3） 异常声明 <br />
exception handling 异常处理、异常处理机制 异常处理、异常处理机制 <br />
exception specification 异常规格（ref. C++ Primer 3/e, 11.4） 异常规范 <br />
exit 退离（指离开函式时的那一个执行点） 退出 <br />
explicit 明白的、明显的、显式 显式 <br />
export 汇出 引出、导出 <br />
expression 运算式、算式 表达式 <br />
facility 设施、设备 设施、设备 <br />
feature 特性 <br />
field 栏位,资料栏（Java） 字段, 值域（Java） <br />
file 档案 文件 <br />
firmware 韧体 固件 <br />
flag 旗标 标记 <br />
flash memory 快闪记忆体 闪存 <br />
flexibility 弹性 灵活性 <br />
flush 清理、扫清 刷新 <br />
font 字型 字体 <br />
form 表单（programming 用语） 窗体 <br />
formal parameter 形式叁数 形式叁数 <br />
forward declaration 前置宣告 前置声明 <br />
forwarding 转呼叫,转发 转发 <br />
forwarding function 转呼叫函式,转发函式 转发函数 <br />
fractal 碎形 分形 <br />
framework 框架 框架 <br />
full specialization 全特化（ref. partial specialization） <br />
function 函式、函数 函数 <br />
function call operator 同 call operator <br />
function object 函式物件（ref. C++ Primer 3/e, 12.3） 函数对象 <br />
function overloaded resolution <br />
函式多载决议程序 函数重载解决（方案） <br />
functionality 功能、机能 功能 <br />
function template 函式模板、函式范本 函数模板 <br />
functor 仿函式 仿函式、函子 <br />
game 游戏 游戏 <br />
generate 生成 <br />
generic 泛型、一般化的 一般化的、通用的、泛化 <br />
generic algorithm 泛型演算法 通用算法 <br />
getter (相对於 setter) 取值函式 <br />
global 全域的（对应於 local） 全局的 <br />
global object 全域物件 全局对象 <br />
global scope resolution operator <br />
全域生存空间（范围决议）运算子 :: 全局范围解析操作符 <br />
group 群组 <br />
group box 群组方块 分组框 <br />
guard clause 卫述句 (Refactoring, p250) 卫语句 <br />
GUI 图形介面 图形界面 <br />
hand shaking 握手协商 <br />
handle 识别码、识别号、号码牌、权柄 句柄 <br />
handler 处理常式 处理函数 <br />
hard－coded 编死的 硬编码的 <br />
hard－copy 硬拷图 屏幕截图 <br />
hard disk 硬碟 硬盘 <br />
hardware 硬体 硬件 <br />
hash table 杂凑表 哈希表、散列表 <br />
header file 表头档、标头档 头文件 <br />
heap 堆积 堆 <br />
hierarchy 阶层体系 层次结构（体系） <br />
hook 挂钩 钩子 <br />
hyperlink 超链结 超链接 <br />
icon 图示、图标 图标 <br />
IDE 整合开发环境 集成开发环境 <br />
identifier 识别字、识别符号 标识符 <br />
if and only if 若且唯若 当且仅当 <br />
Illinois 伊利诺 伊利诺斯 <br />
image 影像 图象 <br />
immediate base 直接的（紧临的）上层 base class。 直接上层基类 <br />
immediate derived 直接的（紧临的）下层 derived class。 直接下层派生类 <br />
immutability 不变性 <br />
immutable 不可变（的） <br />
implement 实作、实现 实现 <br />
implementation 实作品、实作体、实作码、实件 实现 <br />
implicit 隐喻的、暗自的、隐式 隐式 <br />
import 汇入 导入 <br />
increment operator 累加运算子 ++ 增加操作符 <br />
infinite loop 无穷回圈 无限循环 <br />
infinite recursive 无穷递回 无限递归 <br />
information 资讯 信息 <br />
infrastructure 公共基础建设 <br />
inheritance 继承、继承机制 继承、继承机制 <br />
inline 行内 内联 <br />
inline expansion 行内展开 内联展开 <br />
initialization 初始化（动作） 初始化 <br />
initialization list 初值列 初始值列表 <br />
initialize 初始化 初始化 <br />
inner class 内隐类别 内嵌类 <br />
instance 实体 实例 <br />
（根据某种表述而实际产生的「东西」） <br />
instantiated 具现化、实体化（常应用於 template） 实例化 <br />
instantiation 具现体、具现化实体（常应用於 template） 实例 <br />
integer (integral) 整数（的） 整型（的） <br />
integrate 整合 集成 <br />
interacts 交谈、互动 交互 <br />
interface 介面 接口 <br />
for GUI 介面 界面 <br />
interpreter 直译器 解释器 <br />
invariants 恒常性,约束条件 约束条件 <br />
invoke 唤起 调用 <br />
iterate 迭代（回圈一个轮回一个轮回地进行） 迭代 <br />
exception 异常情况 异常 <br />
exception declaration 异常宣告（ref. C++ Primer 3/e, 11.3） 异常声明 <br />
exception handling 异常处理、异常处理机制 异常处理、异常处理机制 <br />
exception specification 异常规格（ref. C++ Primer 3/e, 11.4） 异常规范 <br />
exit 退离（指离开函式时的那一个执行点） 退出 <br />
explicit 明白的、明显的、显式 显式 <br />
export 汇出 引出、导出 <br />
expression 运算式、算式 表达式 <br />
facility 设施、设备 设施、设备 <br />
feature 特性 <br />
field 栏位,资料栏（Java） 字段, 值域（Java） <br />
file 档案 文件 <br />
firmware 韧体 固件 <br />
flag 旗标 标记 <br />
flash memory 快闪记忆体 闪存 <br />
flexibility 弹性 灵活性 <br />
flush 清理、扫清 刷新 <br />
font 字型 字体 <br />
form 表单（programming 用语） 窗体 <br />
formal parameter 形式叁数 形式叁数 <br />
forward declaration 前置宣告 前置声明 <br />
forwarding 转呼叫,转发 转发 <br />
forwarding function 转呼叫函式,转发函式 转发函数 <br />
fractal 碎形 分形 <br />
framework 框架 框架 <br />
full specialization 全特化（ref. partial specialization） <br />
function 函式、函数 函数 <br />
function call operator 同 call operator <br />
function object 函式物件（ref. C++ Primer 3/e, 12.3） 函数对象 <br />
function overloaded resolution <br />
函式多载决议程序 函数重载解决（方案） <br />
functionality 功能、机能 功能 <br />
function template 函式模板、函式范本 函数模板 <br />
functor 仿函式 仿函式、函子 <br />
game 游戏 游戏 <br />
generate 生成 <br />
generic 泛型、一般化的 一般化的、通用的、泛化 <br />
generic algorithm 泛型演算法 通用算法 <br />
getter (相对於 setter) 取值函式 <br />
global 全域的（对应於 local） 全局的 <br />
global object 全域物件 全局对象 <br />
global scope resolution operator <br />
全域生存空间（范围决议）运算子 :: 全局范围解析操作符 <br />
group 群组 <br />
group box 群组方块 分组框 <br />
guard clause 卫述句 (Refactoring, p250) 卫语句 <br />
GUI 图形介面 图形界面 <br />
hand shaking 握手协商 <br />
handle 识别码、识别号、号码牌、权柄 句柄 <br />
handler 处理常式 处理函数 <br />
hard－coded 编死的 硬编码的 <br />
hard－copy 硬拷图 屏幕截图 <br />
hard disk 硬碟 硬盘 <br />
hardware 硬体 硬件 <br />
hash table 杂凑表 哈希表、散列表 <br />
header file 表头档、标头档 头文件 <br />
heap 堆积 堆 <br />
hierarchy 阶层体系 层次结构（体系） <br />
hook 挂钩 钩子 <br />
hyperlink 超链结 超链接 <br />
icon 图示、图标 图标 <br />
IDE 整合开发环境 集成开发环境 <br />
identifier 识别字、识别符号 标识符 <br />
if and only if 若且唯若 当且仅当 <br />
Illinois 伊利诺 伊利诺斯 <br />
image 影像 图象 <br />
immediate base 直接的（紧临的）上层 base class。 直接上层基类 <br />
immediate derived 直接的（紧临的）下层 derived class。 直接下层派生类 <br />
immutability 不变性 <br />
immutable 不可变（的） <br />
implement 实作、实现 实现 <br />
implementation 实作品、实作体、实作码、实件 实现 <br />
implicit 隐喻的、暗自的、隐式 隐式 <br />
import 汇入 导入 <br />
increment operator 累加运算子 ++ 增加操作符 <br />
infinite loop 无穷回圈 无限循环 <br />
infinite recursive 无穷递回 无限递归 <br />
information 资讯 信息 <br />
infrastructure 公共基础建设 <br />
inheritance 继承、继承机制 继承、继承机制 <br />
inline 行内 内联 <br />
inline expansion 行内展开 内联展开 <br />
initialization 初始化（动作） 初始化 <br />
initialization list 初值列 初始值列表 <br />
initialize 初始化 初始化 <br />
inner class 内隐类别 内嵌类 <br />
instance 实体 实例 <br />
（根据某种表述而实际产生的「东西」） <br />
instantiated 具现化、实体化（常应用於 template） 实例化 <br />
instantiation 具现体、具现化实体（常应用於 template） 实例 <br />
integer (integral) 整数（的） 整型（的） <br />
integrate 整合 集成 <br />
interacts 交谈、互动 交互 <br />
interface 介面 接口 <br />
for GUI 介面 界面 <br />
interpreter 直译器 解释器 <br />
invariants 恒常性,约束条件 约束条件 <br />
invoke 唤起 调用 <br />
iterate 迭代（回圈一个轮回一个轮回地进行） 迭代 <br />
iterative 反覆的，迭代的 <br />
iterator 迭代器（一种泛型指标） 迭代器 <br />
iteration 迭代（回圈每次轮回称为一个 iteration） 迭代 <br />
item 项目、条款 项、条款、项目 <br />
laser 雷射 激光 <br />
level 阶 层 (级) <br />
例 high level 高阶 高层 <br />
library 程式库、函式库 库、函数库 <br />
lifetime 生命期、寿命 生命期、寿命 <br />
link 联结、连结 连接,链接 <br />
linker 联结器、连结器 连接器 <br />
literal constant 字面常数（例 3.14 或 "hi" 这等常数值） 字面常数 <br />
list 串列（linked－list） 列表、表、链表 <br />
list box 列表方块、列表框 列表框 <br />
load 载入 装载 <br />
loader 载入器 装载器、载入器 <br />
local 区域的（对应於 global） 局部的 <br />
local object 区域物件 局部对象 <br />
lock 机锁 <br />
loop 回圈 循环 <br />
lvalue 左值 左值 <br />
macro 巨集 宏 <br />
magic number 魔术数字 魔法数 <br />
maintain 维护 维护 <br />
manipulator 操纵器（iostream 预先定义的一种东西） 操纵器 <br />
marshal 编列 列集 <br />
叁考 demarshal <br />
mechanism 机制 机制 <br />
member 成员 成员 <br />
member access operator 成员取用运算子（有 dot 和 arrow 两种） 成员存取操作符 <br />
member function 成员函式 成员函数 <br />
member initialization list <br />
成员初值列 成员初始值列表 <br />
memberwise 以 member 为单元┅、members 逐一┅ 以成员为单位 <br />
memberwise copy 以 members 为单元逐一复制 <br />
memory 记忆体 内存 <br />
menu 表单、选单 菜单 <br />
message 讯息 消息 <br />
message based 以讯息为基础的 基於消息的 <br />
message loop 讯息回圈 消息环 <br />
method (java) 方法、行为、函式 方法 <br />
meta－ 超－ 元－ <br />
例 meta－programming 超编程 元编程 <br />
micro 微 微 <br />
middleware 中介层 中间件 <br />
modeling 模塑 <br />
modeling language 塑模语言，建模语言 <br />
modem 数据机 调制解调器 <br />
module 模组 模块 <br />
modifier 饰词 修饰符 <br />
most derived class 最末层衍生类别 最底层的派生类 <br />
mouse 滑鼠 鼠标 <br />
mutable 可变的 可变的 <br />
multi－tasking 多工 多任务 <br />
namespace 命名空间 名字空间、命名空间 <br />
native 原生的 本地的、固有的 <br />
nested class 巢状类别 嵌套类 <br />
network 网路 网络 <br />
network card 网路卡 网卡 <br />
object 物件 对象 <br />
object based 以物件为基础的 基於对象的 <br />
object file 目的档 目标文件 <br />
object model 物件模型 对象模型 <br />
object oriented 物件导向的 面向对象的 <br />
online 线上 在线 <br />
opaque 不透明的 <br />
operand 运算元 操作数 <br />
operating system (OS) 作业系统 操作系统 <br />
operation 操作、操作行为 操作 <br />
operator 运算子 操作符、运算符 <br />
option 选项，可选方案 选项 <br />
ordinary 常规的 常规的 <br />
overflow 上限溢位（相对於 underflow） 溢出（underflow:下溢） <br />
overhead 额外负担、额外开销 额外开销 <br />
overload 多载化、多载化、重载 重载 <br />
overloaded function 多载化函式 重载的函数 <br />
overloaded operator 多载化运算子 被重载的操作符 <br />
overloaded set 多载集合 重载集合 <br />
override 改写、覆写 重载、改写、重新定义 <br />
（在 derived class 中重新定义虚拟函式 <br />
package 套件 包 <br />
pair 对组 <br />
palette 调色盘、组件盘、工具箱 <br />
pane 窗格 窗格 <br />
（有时为嵌板之意，例 Java Content Pane） <br />
parallel 平行 并行 <br />
parameter 叁数（函式叁数列上的变数） 叁数、形式叁数、形叁 <br />
parameter list 叁数列 叁数列表 <br />
parent class 父类别（或称 base class） 父类 <br />
parentheses 小括弧、小括号 圆括弧、圆括号 <br />
parse 解析 解析 <br />
part 零件 部件 <br />
partial specialization 偏特化（ref. C++ Primer 3/e, 16.10） 局部特化 <br />
（ref. full specialization） <br />
pass by address 传址（函式引数的传递方式）（非正式用语）传地址 <br />
pass by reference 传址（函式引数的一种传递方式） 传地址, 按引用传递 <br />
pass by value 传值（函式引数的一种传递方式） 按值传递 <br />
pattern 范式、样式 模式 <br />
performance 效率、性能兼而有之 性能 <br />
persistence 永续性 持久性 <br />
pixel 图素、像素 像素 <br />
placement delete ref. C++ Primer 3/e, 15.8.2 <br />
placement new ref. C++ Primer 3/e, 15.8.2 <br />
platform 平台 平台 <br />
pointer 指标 指针 <br />
址位器（和址叁器 reference 形成对映，满好） <br />
poll 轮询 轮询 <br />
polymorphism 多型 多态 <br />
pop up 冒起式、弹出式 弹出式 <br />
port 埠 端口 <br />
postfix 后置式、后序式 后置式 <br />
precedence 优先序（通常用於运算子的优先执行次序） <br />
prefix 前置式、前序式 前置式 <br />
preprocessor 前处理器 预处理器 <br />
prime 质数 素数 <br />
primitive type 基本型别 (不同於 base class,基础类别) <br />
print 列印 打印 <br />
printer 印表机 打印机 <br />
priority 优先权 (通常用於执行绪获得 CPU 时间的优先次序） <br />
procedure 程序 过程 <br />
procedural 程序性的、程序式的 过程式的、过程化的 <br />
process 行程 进程 <br />
profile 评测 评测 <br />
profiler 效能（效率）评测器 效能（性能）评测器 <br />
programmer 程式员 程序员 <br />
programming 编程、程式设计、程式化 编程 <br />
progress bar 进度指示器 进度指示器 <br />
project 专案 项目、工程 <br />
property 属性 <br />
protocol 协定 协议 <br />
pseudo code 假码、虚拟码、伪码 伪码 <br />
qualified 经过资格修饰（例如加上 scope 运算子） 限定 <br />
qualifier 资格修饰词、饰词 限定修饰词 <br />
quality 品质 质量 <br />
queue 伫列 队列 <br />
radian 径度 弧度 <br />
radio button 圆钮 单选按钮 <br />
raise 引发（常用来表示发出一个 exception） 引起、引发 <br />
random number 随机数、乱数 随机数 <br />
range 范围、区间（用於 STL 时） 范围、区间 <br />
rank 等级、分等（ref. C++Primer 3/e 9,15章） 等级 <br />
raw 生鲜的、未经处理的 未经处理的 <br />
record 记录 记录 <br />
recordset 记录集 记录集 <br />
recursive 递回 递归 <br />
re－direction 重导向 重定向 <br />
refactoring 重构、重整 重构 <br />
refer 取用 叁考 <br />
refer to 指向、指涉、指代 <br />
reference （C++ 中类似指标的东西，相当於 "化身"） 引用、叁考 <br />
址叁器, see pointer <br />
register 暂存器 寄存器 <br />
reflection 反射 反射、映像 <br />
relational database 关联式资料库 关系数据库 <br />
represent 表述，表现 表述，表现 <br />
resolve 决议（为算式中的符号名称寻找 解析 <br />
对应之宣告式的过程） <br />
resolution 决议程序、决议过程 解析过程 <br />
resolution 解析度 分辨率 <br />
restriction 局限 <br />
return 传回、回返 返回 <br />
return type 回返型别 返回类型 <br />
return value 回返值 返回值 <br />
robust 强固、稳健 健壮 <br />
robustness 强固性、稳健性 健壮性 <br />
routine 常式 例程 <br />
runtime 执行期 运行期、运行时 <br />
common language runtime (CLR) 译为「通用语言执行层」 <br />
rvalue 右值 右值 <br />
save 储存 存储 <br />
schedule 排程 调度 <br />
scheduler 排程器 调度程序 <br />
scheme 结构纲目、组织纲目 <br />
scroll bar 卷轴 滚动条 <br />
scope 生存空间、生存范围、范畴、作用域 生存空间 <br />
scope operator 生存空间（范围决议）运算子 :: 生存空间操作符 <br />
scope resolution operator <br />
生存空间决议运算子 生存空间解析操作符 <br />
（与scope operator同） <br />
screen 萤幕 屏幕 <br />
search 搜寻 查找 <br />
semantics 语意 语义 <br />
sequential container 序列式容器 顺序式容器 <br />
（对应於 associative container） <br />
server 伺服器、伺服端 服务器、服务端 <br />
serial 串行 <br />
serialization 次第读写,序列化 序列化 <br />
(serialize) <br />
setter (相对於 getter) 设值函式 <br />
signal 信号 <br />
signature 标记式、签名式、署名式 签名 <br />
slider 滚轴 滑块 <br />
slot 条孔、槽 槽 <br />
smart pointer 灵巧指标、精灵指标 智能指针 <br />
snapshot 萤幕快照（图） 屏幕截图 <br />
specialization 特殊化、特殊化定义、特殊化宣告 特化 <br />
specification 规格 规格、规范 <br />
splitter 分裂视窗 切分窗口 <br />
software 软体 软件 <br />
solution 解法,解决方案 方案 <br />
source 原始码 源码、源代码 <br />
stack 堆叠 栈 <br />
stack unwinding 堆叠辗转开解（此词用於 exception 主题） 栈辗转开解 * <br />
standard library 标准程式库 <br />
standard template library 标准模板程式库 <br />
statement 述句 语句、声明 <br />
status bar 状态列、状态栏 状态条 <br />
STL 见 standard template library <br />
stream 资料流、串流 流 <br />
string 字串 字符串 <br />
subroutine <br />
subscript operator 下标运算子 [ ] 下标操作符 <br />
subtype 子型别 子类型 <br />
support 支援 支持 <br />
suspend 虚悬 挂起 <br />
symbol 符号 记号 <br />
syntax 语法 语法 <br />
tag 标签 标记 <br />
索引标签,页签 <br />
target 标的（例 target pointer：标的指标） 目标 <br />
task switch 工作切换 任务切换 <br />
template 模板、范本 模板 <br />
template argument deduction <br />
模板引数推导 模板叁数推导 <br />
template explicit specialization <br />
模板显式特化（版本） 模板显式特化 <br />
template parameter 模板叁数 模板叁数 <br />
temporary object 暂时物件 临时对象 <br />
text 文字 文本</div>
<img src ="http://www.blogjava.net/tianlang952/aggbug/283443.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/tianlang952/" target="_blank">Eric--952</a> 2009-06-21 12:02 <a href="http://www.blogjava.net/tianlang952/archive/2009/06/21/283443.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>java 窗口居中</title><link>http://www.blogjava.net/tianlang952/archive/2009/06/14/282169.html</link><dc:creator>Eric--952</dc:creator><author>Eric--952</author><pubDate>Sun, 14 Jun 2009 07:41:00 GMT</pubDate><guid>http://www.blogjava.net/tianlang952/archive/2009/06/14/282169.html</guid><wfw:comment>http://www.blogjava.net/tianlang952/comments/282169.html</wfw:comment><comments>http://www.blogjava.net/tianlang952/archive/2009/06/14/282169.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/tianlang952/comments/commentRss/282169.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/tianlang952/services/trackbacks/282169.html</trackback:ping><description><![CDATA[<h1 class="block_title"><a id="viewpost1_TitleUrl" href="http://www.blogjava.net/Xejuny/archive/2007/12/05/165519.html"></a>&nbsp;</h1>
<div class="post">
<div class="postcontent">
<p>如果要使主窗口&nbsp;居中一般使用下面的方法：</p>
<p><code><font color="#7f0055"><strong>import </strong></font><font color="#000000">javax.swing.JFrame;</font><br />
<font color="#7f0055"><strong>import </strong></font><font color="#000000">java.awt.Toolkit;</font><br />
<font color="#7f0055"><strong>import </strong></font><font color="#000000">java.awt.Dimension;</font><br />
<br />
<br />
<font color="#7f0055"><strong>public class </strong></font><font color="#000000">ToCenter </font><br />
<font color="#000000">{</font><br />
<font color="#ffffff">&nbsp;&nbsp;</font><font color="#7f0055"><strong>public </strong></font><font color="#000000">ToCenter</font><font color="#000000">(</font><font color="#000000">JFrame frame</font><font color="#000000">)</font><br />
<font color="#ffffff">&nbsp;&nbsp;</font><font color="#000000">{</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#3f7f5f">//---------------------------设置窗口居中----------------------------------------------------------</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#7f0055"><strong>int </strong></font><font color="#000000">windowWidth = frame.getWidth</font><font color="#000000">()</font><font color="#000000">;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#3f7f5f">//获得窗口宽</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#7f0055"><strong>int </strong></font><font color="#000000">windowHeight = frame.getHeight</font><font color="#000000">()</font><font color="#000000">;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#3f7f5f">//获得窗口高</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">Toolkit kit = Toolkit.getDefaultToolkit</font><font color="#000000">()</font><font color="#000000">;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#3f7f5f">//定义工具包</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">Dimension screenSize = kit.getScreenSize</font><font color="#000000">()</font><font color="#000000">;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#3f7f5f">//获取屏幕的尺寸</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#7f0055"><strong>int </strong></font><font color="#000000">screenWidth = screenSize.width;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#3f7f5f">//获取屏幕的宽</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#7f0055"><strong>int </strong></font><font color="#000000">screenHeight = screenSize.height;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#3f7f5f">//获取屏幕的高</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">frame.setLocation</font><font color="#000000">(</font><font color="#000000">screenWidth/</font><font color="#990000">2</font><font color="#000000">-windowWidth/</font><font color="#990000">2</font><font color="#000000">, screenHeight/</font><font color="#990000">2</font><font color="#000000">-windowHeight/</font><font color="#990000">2</font><font color="#000000">)</font><font color="#000000">;</font><font color="#3f7f5f">//设置窗口居中显示</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#3f7f5f">//------------------------------------------------------------------------------------------------</font><br />
<font color="#ffffff"><span style="font-size: 18pt"><font color="#ffffff"></font></span>&nbsp;&nbsp;</font><font color="#000000">}</font></code></p>
<p><code><font color="#000000">}</font></code></p>
<p>当然你也可以让一个Window对象、JWindow对象或Frame对象居中，以下是更通用的方法：</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <code><font color="#000000">Toolkit kit = Toolkit.getDefaultToolkit</font><font color="#000000">()</font><font color="#000000">;&nbsp;&nbsp;&nbsp; </font><font color="#3f7f5f">// 定义工具包</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">Dimension screenSize = kit.getScreenSize</font><font color="#000000">()</font><font color="#000000">;&nbsp;&nbsp; </font><font color="#3f7f5f">// 获取屏幕的尺寸</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#7f0055"><strong>int </strong></font><font color="#000000">screenWidth = screenSize.width/</font><font color="#990000">2</font><font color="#000000">;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </font><font color="#3f7f5f">// 获取屏幕的宽</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#7f0055"><strong>int </strong></font><font color="#000000">screenHeight = screenSize.height/</font><font color="#990000">2</font><font color="#000000">;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </font><font color="#3f7f5f">// 获取屏幕的高</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#7f0055"><strong>int </strong></font><font color="#000000">height = </font><font color="#7f0055"><strong>this</strong></font><font color="#000000">.getHeight</font><font color="#000000">()</font><font color="#000000">;</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#7f0055"><strong>int </strong></font><font color="#000000">width = </font><font color="#7f0055"><strong>this</strong></font><font color="#000000">.getWidth</font><font color="#000000">()</font><font color="#000000">;</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp; <br />
</font></code><code><font color="#000000">&nbsp;&nbsp;&nbsp; setLocation</font><font color="#000000">(</font><font color="#000000">screenWidth-width/</font><font color="#990000">2</font><font color="#000000">, screenHeight-height/</font><font color="#990000">2</font><font color="#000000">)</font><font color="#000000">;<br />
<br />
<br />
</font></code>
<p>另外一种方法，也是jdk1.4之后提供的方法：</p>
<p><font color="#ff6600">&nbsp;dialog.setLocationRelativeTo(owner);</font></p>
<p>这种方法是设定一个窗口的相对于另外一个窗口的位置（一般是居中于父窗口的中间），如果<font color="#ff6600">owner==null</font>则窗口就居于屏幕的中央（这是一个比较好的方法，对于主窗口就不用再使用上面第一种方法来实现了！！！）。</p>
</div>
</div>
<img src ="http://www.blogjava.net/tianlang952/aggbug/282169.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/tianlang952/" target="_blank">Eric--952</a> 2009-06-14 15:41 <a href="http://www.blogjava.net/tianlang952/archive/2009/06/14/282169.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Java新手入门的30个基本概念</title><link>http://www.blogjava.net/tianlang952/archive/2009/06/13/282024.html</link><dc:creator>Eric--952</dc:creator><author>Eric--952</author><pubDate>Sat, 13 Jun 2009 06:07:00 GMT</pubDate><guid>http://www.blogjava.net/tianlang952/archive/2009/06/13/282024.html</guid><wfw:comment>http://www.blogjava.net/tianlang952/comments/282024.html</wfw:comment><comments>http://www.blogjava.net/tianlang952/archive/2009/06/13/282024.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/tianlang952/comments/commentRss/282024.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/tianlang952/services/trackbacks/282024.html</trackback:ping><description><![CDATA[<p><span class="px14"><font size="3">前言: </font>
<p>　　在我们学习Java的过程中,掌握其中的基本概念对我们的学习无论是J2SE,J2EE,J2ME都是很重要的,J2SE是Java的基础,所以有必要对其中的基本概念做以归纳,以便大家在以后的学习过程中更好的理解java的精髓,在此我总结了30条基本的概念。</p>
<p>　　Java概述:</p>
<p>　　目前Java主要应用于中间件的开发(middleware)---处理客户机于服务器之间的通信技术,早期的实践证明,Java不适合pc应用程序的开发,其发展逐渐变成在开发手持设备,互联网信息站,及车载计算机的开发.Java于其他语言所不同的是程序运行时提供了平台的独立性,称许可以在windows,solaris,linux其他操作系统上使用完全相同的代码.Java的语法与C++语法类似,C++/C程序员很容易掌握,而且Java是完全的彻底的面向对象的,其中提出了很好的GC(Garbage Collector)垃圾处理机制,防止内存溢出。</p>
<p>　　Java的白皮书为我们提出了Java语言的11个关键特性。</p>
<p>　　(1)Easy:Java的语法比C++的相对简单,另一个方面就是Java能使软件在很小的机器上运行,基础解释其和类库的支持的大小约为40kb,增加基本的标准库和线程支持的内存需要增加125kb。</p>
<p>　　(2)分布式:Java带有很强大的TCP/IP协议宓睦炭?Java应用程序能够通过URL来穿过网络来访问远程对象,由于servlet机制的出现,使Java编程非常的高效,现在许多的大的web server都支持servlet。</p>
<p>　　(3)OO:面向对象设计是把重点放在对象及对象的接口上的一个编程技术.其面向对象和C++有很多不同,在与多重继承的处理及Java的原类模型。</p>
<p>　　(4)健壮特性:Java采取了一个安全指针模型,能减小重写内存和数据崩溃的可能型。</p>
<p>　　(5)安全:Java用来设计网路和分布系统,这带来了新的安全问题,Java可以用来构建防病毒和防攻击的System.事实证明Java在防毒这一方面做的比较好。</p>
<p>　　(6)中立体系结构:Java编译其生成体系结构中立的目标文件格式可以在很多处理器上执行,编译器产生的指令字节码(Javabytecode)实现此特性,此字节码可以在任何机器上解释执行。</p>
<p>　　(7)可移植性:Java中对基本数据结构类型的大小和算法都有严格的规定所以可移植性很好。</p>
<p>　　(8)多线程:Java处理多线程的过程很简单,Java把多线程实现交给底下操作系统或线程程序完成.所以多线程是Java作为服务器端开发语言的流行原因之一。</p>
<p>　　(9)Applet和servlet:能够在网页上执行的程序叫Applet,需要支持Java的浏览器很多,而applet支持动态的网页,这是很多其他语言所不能做到的。</p>
<p>基本概念:</p>
<p>　　1.OOP中唯一关系的是对象的接口是什么,就像计算机的销售商她不管电源内部结构是怎样的,他只关系能否给你提供电就行了,也就是只要知道can or not而不是how and why.所有的程序是由一定的属性和行为对象组成的,不同的对象的访问通过函数调用来完成,对象间所有的交流都是通过方法调用,通过对封装对象数据,很大限度上提高复用率。</p>
<p>　　2.OOP中最重要的思想是类,类是模板是蓝图,从类中构造一个对象,即创建了这个类的一个实例(instance)。</p>
<p>　　3.封装:就是把数据和行为结合起在一个包中)并对对象使用者隐藏数据的实现过程,一个对象中的数据叫他的实例字段(instance field)。</p>
<p>　　4.通过扩展一个类来获得一个新类叫继承(inheritance),而所有的类都是由Object根超类扩展而得,根超类下文会做介绍。</p>
<p>　　5.对象的3个主要特性 </p>
<p>　　behavior---说明这个对象能做什么.<br />
　　state---当对象施加方法时对象的反映.<br />
　　identity---与其他相似行为对象的区分标志.<br />
　　每个对象有唯一的indentity 而这3者之间相互影响.</p>
<p>　　6.类之间的关系:</p>
<p>use-a :依赖关系<br />
has-a :聚合关系<br />
is-a :继承关系--例:A类继承了B类,此时A类不仅有了B类的方法,还有其自己的方法.(个性存在于共性中)</p>
<p>　　7.构造对象使用构造器:构造器的提出,构造器是一种特殊的方法,构造对象并对其初始化。</p>
<p>　　例:Data类的构造器叫Data</p>
<p>　　　new Data()---构造一个新对象,且初始化当前时间.<br />
　　　Data happyday=new Data()---把一个对象赋值给一个变量happyday,从而使该对象能够多次使用,此处要声明的使变量与对象变量二者是不同的.new返回的值是一个引用。</p>
<p>　　构造器特点:构造器可以有0个,一个或多个参数<br />
　　构造器和类有相同的名字<br />
　　一个类可以有多个构造器<br />
　　构造器没有返回值<br />
　　构造器总是和new运算符一起使用.</p>
<p>　　8.重载:当多个方法具有相同的名字而含有不同的参数时,便发生重载.编译器必须挑选出调用哪个方法。</p>
<p>　　9.包(package)Java允许把一个或多个类收集在一起成为一组,称作包,以便于组织任务,标准Java库分为许多包.java.lang java.util java,net等,包是分层次的所有的java包都在java和javax包层次内。</p>
<p>　　10.继承思想:允许在已经存在的类的基础上构建新的类,当你继承一个已经存在的类时,那么你就复用了这个类的方法和字段,同时你可以在新类中添加新的方法和字段。</p>
<p>　　11.扩展类:扩展类充分体现了is-a的继承关系. 形式为:class (子类) extends (基类)。</p>
<p>　　12.多态:在java中,对象变量是多态的.而java中不支持多重继承。</p>
13.动态绑定:调用对象方法的机制。<font size="3"> </font>
<p>&nbsp;</p>
<p>　　(1)编译器检查对象声明的类型和方法名。</p>
<p>　　(2)编译器检查方法调用的参数类型。</p>
<p>　　(3)静态绑定:若方法类型为priavte static final 编译器会准确知道该调用哪个方法。</p>
<p>　　(4)当程序运行并且使用动态绑定来调用一个方法时,那么虚拟机必须调用x所指向的对象的实际类型相匹配的方法版本。</p>
<p>　　(5)动态绑定:是很重要的特性,它能使程序变得可扩展而不需要重编译已存代码。</p>
<p>　　14.final类:为防止他人从你的类上派生新类,此类是不可扩展的。</p>
<p>　　15.动态调用比静态调用花费的时间要长。</p>
<p>　　16.抽象类:规定一个或多个抽象方法的类本身必须定义为abstract。</p>
<p>　　例: public abstract string getDescripition</p>
<p>17.Java中的每一个类都是从Object类扩展而来的。</p>
<p>　　18.object类中的equal和toString方法。</p>
<p>　　equal用于测试一个对象是否同另一个对象相等。</p>
<p>　　toString返回一个代表该对象的字符串,几乎每一个类都会重载该方法,以便返回当前状态的正确表示.<br />
(toString 方法是一个很重要的方法)</p>
<p>　　 19.通用编程:任何类类型的所有值都可以同object类性的变量来代替。</p>
<p>　　20.数组列表:ArrayList动态数组列表,是一个类库,定义在java.uitl包中,可自动调节数组的大小。</p>
<p>　　21.class类 object类中的getclass方法返回ckass类型的一个实例,程序启动时包含在main方法的类会被加载,虚拟机要加载他需要的所有类,每一个加载的类都要加载它需要的类。</p>
<p>　　22.class类为编写可动态操纵java代码的程序提供了强大的功能反射,这项功能为JavaBeans特别有用,使用反射Java能支持VB程序员习惯使用的工具。</p>
<p>　　能够分析类能力的程序叫反射器,Java中提供此功能的包叫Java.lang.reflect反射机制十分强大.</p>
<p>　　1.在运行时分析类的能力。<br />
　　2.在运行时探察类的对象。<br />
　　3.实现通用数组操纵代码。<br />
　　4.提供方法对象。</p>
<p>　　 而此机制主要针对是工具者而不是应用及程序。</p>
<p>　　 反射机制中的最重要的部分是允许你检查类的结构.用到的API有:</p>
<p>java.lang.reflect.Field 返回字段.<br />
java.reflect.Method 返回方法.<br />
java.lang.reflect.Constructor 返回参数.</p>
<p>　　方法指针:java没有方法指针,把一个方法的地址传给另一个方法,可以在后面调用它,而接口是更好的解决方案。</p>
<p>　　23.接口(Interface)说明类该做什么而不指定如何去做,一个类可以实现一个或多个interface。</p>
<p>　　24.接口不是一个类,而是对符合接口要求的类的一套规范。</p>
<p>　　若实现一个接口需要2个步骤:　</p>
<p>　　1.声明类需要实现的指定接口。<br />
　　2.提供接口中的所有方法的定义。</p>
<p>　　声明一个类实现一个接口需要使用implements 关键字</p>
<p>　　class actionB implements Comparable 其actionb需要提供CompareTo方法,接口不是类,不能用new实例化一个接口.</p>
<p>　　 25.一个类只有一个超类,但一个类能实现多个接口。Java中的一个重要接口：Cloneable</p>
<p>　　26.接口和回调.编程一个常用的模式是回调模式,在这种模式中你可以指定当一个特定时间发生时回调对象上的方法。</p>
<p>　　例:ActionListener 接口监听.<br />
　　类似的API有:java.swing.JOptionPane</p>
<p>　　　java.swing.Timer<br />
　　　java.awt.Tookit</p>
<p>　　27.对象clone:clone方法是object一个保护方法,这意味着你的代码不能简单的调用它。</p>
<p>　　28.内部类:一个内部类的定义是定义在另一个内部的类。</p>
<p>　　原因是:</p>
<p>　　1.一个内部类的对象能够访问创建它的对象的实现,包括私有数据。</p>
<p>　　2.对于同一个包中的其他类来说,内部类能够隐藏起来。</p>
<p>　　3.匿名内部类可以很方便的定义回调。</p>
<p>　　4.使用内部类可以非常方便的编写事件驱动程序。</p>
<p>　　29.代理类(proxy):</p>
<p>　　1.指定接口要求所有代码</p>
<p>　　2.object类定义的所有的方法(toString equals)</p>
<p>　　30.数据类型:Java是强调类型的语言,每个变量都必须先申明它都类型,java中总共有8个基本类型.4种是整型,2种是浮点型,一种是字符型,被用于Unicode编码中的字符,布尔型。</p>
</span>
<img src ="http://www.blogjava.net/tianlang952/aggbug/282024.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/tianlang952/" target="_blank">Eric--952</a> 2009-06-13 14:07 <a href="http://www.blogjava.net/tianlang952/archive/2009/06/13/282024.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>JAVA新技术在协同OA中的应用</title><link>http://www.blogjava.net/tianlang952/archive/2009/06/13/281939.html</link><dc:creator>Eric--952</dc:creator><author>Eric--952</author><pubDate>Fri, 12 Jun 2009 16:23:00 GMT</pubDate><guid>http://www.blogjava.net/tianlang952/archive/2009/06/13/281939.html</guid><wfw:comment>http://www.blogjava.net/tianlang952/comments/281939.html</wfw:comment><comments>http://www.blogjava.net/tianlang952/archive/2009/06/13/281939.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/tianlang952/comments/commentRss/281939.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/tianlang952/services/trackbacks/281939.html</trackback:ping><description><![CDATA[<span style="font-size: 18pt">　</span><a class="fllink" href="http://soft.chinabyte.com/xxhdq/cc/" target="_bank"><span style="font-size: 18pt">协同软件</span></a><span style="font-size: 18pt">是最受用户追捧的</span><a class="fllink" href="http://soft.chinabyte.com/gjrj/" target="_bank"><span style="font-size: 18pt">管理软件</span></a><span style="font-size: 18pt">之一，被誉为继OFFICE、ERP之后，应用</span><a class="fllink" href="http://product.yesky.com/software/" target="_bank"><span style="font-size: 18pt">软件</span></a><span style="font-size: 18pt">领域最大的应用热潮。在复旦协达、点击等协同软件专业厂商的大力推动，以及用户需求的拉动下，我国协同软件发展非常迅速，协同软件的产品升级换代也非常快。许多协同软件产品对于新技术的吸收与采纳，持非常积极的态度，为我国协同软件在产品上赶超国际水平奠定了基础。 </span>
<p><span style="font-size: 18pt">　　因为协同软件大部分都是组织单位的所有管理者都需要用的管理软件，因此目前主流的协同软件都是采用B/S应用模式和采用JAVA开发，避免了传统C/S下受局域网的限制，以及 </span><a class="fllink" href="http://soft.chinabyte.com/gjrj/" target="_bank"><span style="font-size: 18pt">.NET</span></a><span style="font-size: 18pt"> 等非JAVA开发架构所造成的系统性能瓶颈。以协达软件实施的徐工、宝钢、苏宁等著名企业为例，在选择协同软件时，将基于.NET 的产品和基于JAVA的产品进行多项比较，无论从技术的前瞩性还是系统性能的优越性等方面，JAVA开发的产品远远强于.NET 开发的产品。</span></p>
<p><span style="font-size: 18pt">　　作为基于互联网应用软件上最主流的开发语言，JAVA的发展速度也非常快，版本不断升级 ，新的技术和新的功能不断涌现。技术进步，同时带动了互联网最主要的管理软件--协同软件的功能升级。在协同软件中，有许多新技术对提升协同软件的功能有很大帮助。从复旦协达协同应用平台为用户实施的众多客户案例来看，用户对产品技术的关注度比较高，特别是对于新技术所带来的新功能和新性能，会有较大兴趣。参考被广泛评价为产品竞争第一的复旦协达软件，我们可以看出，JAVA的新技术对提升协同软件的产品品质有不可磨灭的贡献，这些新技术主要包括：</span></p>
<p><span style="font-size: 18pt">　　一、Web Start</span></p>
<p><span style="font-size: 18pt">　　Java Web Start 是一个软件技术，它包含了 applet 的可移植性、Servlet 和 JavaServer Pages (JSP)的可维护性以及象 XML 和 HTML 这样的标记语言的简易性。它是基于 Java 的应用程序，允许从标准的 Web </span><a class="fllink" href="http://product.yesky.com/service/" target="_bank"><span style="font-size: 18pt">服务器</span></a><span style="font-size: 18pt">启动、部署和更新功能完全的 Java 2 客户机应用程序。绝大部分的主流协同软件都有图形工作流，如何基于WEB进行图形流程的定义与编辑，一直是个难题。复旦协达等以业务流程管理见长的协同软件产品，以前往往是采用APPLT技术，来实现这一功能。复旦协达新近发版的通用协同OA 5.0，所提供的专业BPM业务流程管理客户端定制工具，是通过Web Start 技术实现的，使得在客户端能够更灵活、更丰富地图形化编辑流程，并且这些编辑内容可以自动保存在服务端。Web Start避免了APPLT在性能上的不足，并且功能实现的自由度和完善度更大。</span></p>
<p><span style="font-size: 18pt">　　二、ajax</span></p>
<p><span style="font-size: 18pt">　　Ajax是WEB2.0常用的核心技术之一。确切地讲，Ajax(Asynchronous JavaScript and XML)并不是新的技术，它是多种技术的结合。Ajax(即异步 JavaScript 和 XML)是一种 Web 应用程序开发的手段，它采用客户端脚本与 Web 服务器交换数据。所以，不必采用会中断交互的完整页面刷新，就可以动态地更新 Web 页面。使用 Ajax，可以创建更加丰富、更加动态的 Web 应用程序用户界面，其即时性与可用性甚至能够接近本机桌面应用程序。Ajax最常见用于解决循环载入问题，例如复旦协达通用协同OA 5.0版本，大量应用Ajax解决组织结构目录树的载入问题，避免了因循环载入数据造成的运算负荷大，甚至死机的问题。</span></p>
<p><span style="font-size: 18pt">　　三、Server push</span></p>
<p><span style="font-size: 18pt">　　Server push--崭新的"推"技术，它是一种先进的服务器和客户机之间的通信连接方式，利用在服务器端的CGI脚本程序把数据源源不断地推向客户机，从而使客户机和服务器之间的交互性能大大提高。协同软件有个重要的功能，就是即时通讯IM。基于WEB应用的"端到端"的IM，比传统的点对点的IM，在组织级应用上性能更优化，更便于组织管理。但是，传统的WEB化IM，性能相对低下，无法解决群发、同时多人聊天等功能。复旦协达等协同软件，采用采用Server push技术实现即时通讯的消息推送功能，大大优化了基于WEB应用的即时通讯系统性能，带动了WEB化即时通讯的流行。</span></p>
<p><span style="font-size: 18pt">　　以业务流程管理BPM和</span><a class="fllink" href="http://soft.chinabyte.com/xxhdq/cpc/" target="_bank"><span style="font-size: 18pt">办公自动化</span></a><span style="font-size: 18pt">OA为主要应用的协同软件，由于应用范围广、并发用户数多，对于系统的性能要求非常高。复旦协达以先进的技术为依托，为用户提供了一套具备强大技术保障的协同应用</span><a class="fllink" href="http://solution.chinabyte.com/" target="_bank"><span style="font-size: 18pt">解决方案</span></a><span style="font-size: 18pt">，受到用户的广泛青睐。可以预计，基于JAVA技术开发的辛同软件，将会成为企业级协同应用的主流。</span></p>
<img src ="http://www.blogjava.net/tianlang952/aggbug/281939.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/tianlang952/" target="_blank">Eric--952</a> 2009-06-13 00:23 <a href="http://www.blogjava.net/tianlang952/archive/2009/06/13/281939.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Java Servlet 3.0 规范发布最终建议草案</title><link>http://www.blogjava.net/tianlang952/archive/2009/06/13/281937.html</link><dc:creator>Eric--952</dc:creator><author>Eric--952</author><pubDate>Fri, 12 Jun 2009 16:19:00 GMT</pubDate><guid>http://www.blogjava.net/tianlang952/archive/2009/06/13/281937.html</guid><wfw:comment>http://www.blogjava.net/tianlang952/comments/281937.html</wfw:comment><comments>http://www.blogjava.net/tianlang952/archive/2009/06/13/281937.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/tianlang952/comments/commentRss/281937.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/tianlang952/services/trackbacks/281937.html</trackback:ping><description><![CDATA[<p><span style="font-size: 18pt">Servlet 3.0规范的一个主要目标是无需手动修改应用程序web.xml文件，即可部署servlet，filter（过滤器）和listener（监听器）等。新的特征包括：</span></p>
<ul>
    <li><span style="font-size: 18pt">Annotation（注释）在filter和servlet中的使用，让部署它们时可以不用在web.xml中声明相关条目。 </span>
    <li><span style="font-size: 18pt">支持&#8220;web片段（fragment）&#8221;，由开发人员提供配置信息，无需手动编辑web.xml文件。XML片段放置于<em>/META-INF/web-fragments.xml</em>文件中，它包含大部分与web.xml描述符相同的元素。容器将在部署时处理这些XML片段，并配置最终的描述符。 </span>
    <li><span style="font-size: 18pt">源于<em>ServletContextListeners</em>的对filter和servlet的编程式配置，这些配置会被放在jar包中的<em>/META-INF/*.tld</em>文件里。 </span></li>
</ul>
<p><span style="font-size: 18pt">在</span><a id="yhbx" title="早期草案审阅" href="http://jcp.org/aboutJava/communityprocess/edr/jsr315/index.html"><span style="font-size: 18pt">早期草案审阅</span></a><span style="font-size: 18pt">阶段，这些特征引起过一些</span><a id="ng6y" title="争论" href="http://www.infoq.com/news/2008/05/JSR-315;jsessionid=F81F65EC5EBBBE98D24E763AC4FE29BC;jsessionid=B38E1643C06DF5D2DDE1A55722C69F2E"><span style="font-size: 18pt">争论</span></a><span style="font-size: 18pt">。一些专家组成员担心会有严重的安全风险，诸如部署了非预期的filter和servlet，无论这是偶然的或是故意混淆的结果。专家组成员Greg Wilkins在他</span><a id="ahmb" title="强烈批评博文" href="http://blogs.webtide.com/gregw/entry/servlet_3_0_public_review"><span style="font-size: 18pt">言辞激烈的博文</span></a><span style="font-size: 18pt">中将这一规范描述为&#8220;糟糕的文档以及缺陷流程下工作不和谐的专家组的成果&#8221;。</span><a id="jy_d" title="最终建议草案" href="http://jcp.org/aboutJava/communityprocess/pfd/jsr315/index.html"><span style="font-size: 18pt">最终建议草案</span></a><span style="font-size: 18pt">中讨论了大部分以上被关注的问题，包括指定多个jar文件的绝对顺序，以及允许排除个别jar文件。它以如下方式工作：借助<em>META-INF/web-fragment.xml</em>文件中的<em><name></name></em>元素，<em>WEB-INF/lib</em>中的每个jar文件被赋予一个对应的名字。Web应用的<em>WEB-INF/web.xml</em>将包含<em><absolute-ordering></absolute-ordering></em>元素，并以应用的顺序列出以上的片段名，同时它还有一个可选的<em><others></others></em>元素，用于标识是否以及何时包含（include）那些未被命名的jar文件。部署者可以选择只部署那些列表中可信的jar文件，以防止意外部署的问题。此外，在找到web-fragment.xml文件之前，顺序的特性可以排除（exclude）那些不需要扫描的jar文件，因此加速了应用的部署。</span></p>
<p><span style="font-size: 18pt">除了支持片段以及使用注释，专家组所设定的另一个需求是可以插入框架共享副本，包括JAX-WS，JAX-RS和JSF等构建在Web容器之上的框架。公开评阅草稿中加入的<em>ServletContainerInitializer</em>正是用于处理这个用例。<em>ServletContainerInitializers</em>通过jar服务API被发现，另外它指定它所能处理的一系列类型。任何包含在<em>WEB-INF/lib</em>下jar文件里的的这些类型的类（Class），在发现后会被传递给<em>ServletContainerInitializer</em>，它能够使用与<em>ServletContextListeners</em>相同的编程式来配置APIs。尽管这点广受欢迎，但<em>ServletContainerInitializer</em>也的确引出了另一个新的问题，正如Wilkins在</span><a id="vli3" title="后续的博文" href="http://blogs.webtide.com/gregw/entry/servlet_3_0_proposed_final"><span style="font-size: 18pt">后续的博文</span></a><span style="font-size: 18pt">中所强调的那样，目前仍不清晰的是使用绝对的顺序机制能否排除<em>ServletContainerInitializer</em>。他给出了一些自己的建议，以澄清这一点：</span></p>
<blockquote><span style="font-size: 18pt">如果web.xml具有一个不包含<others></others>元素的<absolute-ordering>，那么只有在顺序中列出的包含片段的jar文件才可以通过注释和可插拔（Pluggability）特征实例化Filter、Listener和Servlet等。具体来说： </span>
<p><span style="font-size: 18pt">&nbsp;</span></p>
<ul>
    <li><span style="font-size: 18pt">被排除的jar文件的web-fragment.xml不会被处理； </span>
    <li><span style="font-size: 18pt">对于注释的servlet，filter或listener，被排除的jar文件不会被扫描。但是，如果一个源于被排除的jar的servlet，filter或者listener被列在了web.xml或者非排除性的web-fragment.xml中，除非它被metadata-complete所排除，那么这些注释将被采用。 </span>
    <li><span style="font-size: 18pt">在被排除的jar文件的TLD文件中所发现的ServletContextListeners将不能够通过编程式APIs配置filter和servlet。任何这样的尝试将导致IllegalStateException异常。 </span>
    <li><span style="font-size: 18pt">如果从被排除的jar文件中装载一个发现的ServletContainerInitializer，它将会被忽略。 </span>
    <li><span style="font-size: 18pt">在ServerletContainerInitializers处理类时，将不会扫描被排除的jar文件。 </span></li>
</ul>
</absolute-ordering></blockquote>
<p><span style="font-size: 18pt">除了这些易于使用的特征，JSR-315还添加了对异步请求的支持，它允许线程提前返回容器并执行其他任务。这个特征备受争议，专家组试图利用已有的RequestDispatcher处理异步的重分发。讨论的结果是，新规范添加了20个方法和3个新的接口。由于其复杂性，在公开审阅阶段被广泛批评。最终建议草案定义了一个明确的分发类型：<em>AsyncContext.dispatch</em>，它被用于执行异步请求，并包含相当简化了的API。<em>@WebServlet</em>和<em>@WebFilter</em>注释具有一个boolean型的属性：<em>asyncSupported</em>，缺省为false。当它被设为true时，应用程序可以通过调用<em>startAsync</em>启动另一个分离的线程进行异步处理，同时传递给它到request（请求）和response（响应）对象的引用，之后从容器里的原线程退出。这意味着response将沿着与进来相同的路径反序遍历这些过滤器（或过滤器链）。当异步处理从request开始时，另一个线程或者回调（callback）也可以产生response并调用<em>complete</em>方法，或者通过<em>AsyncContext.dispatch</em>方法将request分发出去，以便它在容器的上下文环境中运行。</span></p>
<img src ="http://www.blogjava.net/tianlang952/aggbug/281937.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/tianlang952/" target="_blank">Eric--952</a> 2009-06-13 00:19 <a href="http://www.blogjava.net/tianlang952/archive/2009/06/13/281937.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>