自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(69)
  • 收藏
  • 关注

原创 Thinking in java 中文版 程序源代码

我发表在了文件列表里:第一部分:http://www.csdn.net/filebbs/read_topic.asp?id=326第二部分:http://www.csdn.net/filebbs/read_topic.asp?id=325 (完)                                                            

2001-07-25 14:57:00 2848 2

原创 Thinking in Java 21

附录C Java编程规则本附录包含了大量有用的建议,帮助大家进行低级程序设计,并提供了代码编写的一般性指导:(1) 类名首字母应该大写。字段、方法以及对象(句柄)的首字母应小写。对于所有标识符,其中包含的所有单词都应紧靠在一起,而且大写中间单词的首字母。例如:ThisIsAClassNamethisIsMethodOrFieldName若在定义中出现了常数初始化字符,则大写static final

2001-07-25 14:41:00 1249

原创 Thinking in Java 19

附录A 使用非JAVA代码JAVA语言及其标准API(应用程序编程接口)应付应用程序的编写已绰绰有余。但在某些情况下,还是必须使用非JAVA编码。例如,我们有时要访问操作系统的专用特性,与特殊的硬件设备打交道,重复使用现有的非Java接口,或者要使用“对时间敏感”的代码段,等等。与非Java代码的沟通要求获得编译器和“虚拟机”的专门支持,并需附加的工具将Java代码映射成非Java代码(也有一个简

2001-07-25 14:40:00 1608

原创 Thinking in Java 20

附录B 对比C++和Java“作为一名C++程序员,我们早已掌握了面向对象程序设计的基本概念,而且Java的语法无疑是非常熟悉的。事实上,Java本来就是从C++衍生出来的。”然而,C++和Java之间仍存在一些显著的差异。可以这样说,这些差异代表着技术的极大进步。一旦我们弄清楚了这些差异,就会理解为什么说Java是一种优秀的程序设计语言。本附录将引导大家认识用于区分Java和C++的一些重要特征

2001-07-25 14:40:00 1343

原创 Thinking in Java 16

第15章 网络编程历史上的网络编程都倾向于困难、复杂,而且极易出错。程序员必须掌握与网络有关的大量细节,有时甚至要对硬件有深刻的认识。一般地,我们需要理解连网协议中不同的“层”(Layer)。而且对于每个连网库,一般都包含了数量众多的函数,分别涉及信息块的连接、打包和拆包;这些块的来回运输;以及握手等等。这是一项令人痛苦的工作。但是,连网本身的概念并不是很难。我们想获得位于其他地方某台机器上的信息

2001-07-25 14:38:00 1849

原创 Thinking in Java 12

第11章 运行期类型鉴定运行期类型鉴定(RTTI)的概念初看非常简单——手上只有基础类型的一个句柄时,利用它判断一个对象的正确类型。然而,对RTTI的需要暴露出了面向对象设计许多有趣(而且经常是令人困惑的)的问题,并把程序的构造问题正式摆上了桌面。本章将讨论如何利用Java在运行期间查找对象和类信息。这主要采取两种形式:一种是“传统”RTTI,它假定我们已在编译和运行期拥有所有类型;另一种是Jav

2001-07-25 14:35:00 1347

原创 Thinking in Java 9

第8章 对象的容纳“如果一个程序只含有数量固定的对象,而且已知它们的存在时间,那么这个程序可以说是相当简单的。”通常,我们的程序需要根据程序运行时才知道的一些标准创建新对象。若非程序正式运行,否则我们根本不知道自己到底需要多少数量的对象,甚至不知道它们的准确类型。为了满足常规编程的需要,我们要求能在任何时候、任何地点创建任意数量的对象。所以不可依赖一个已命名的句柄来容纳自己的每一个对象,就象下面这

2001-07-25 14:32:00 1944

原创 Thinking in Java 10

第9章 违例差错控制Java的基本原理就是“形式错误的代码不会运行”。与C++类似,捕获错误最理想的是在编译期间,最好在试图运行程序以前。然而,并非所有错误都能在编译期间侦测到。有些问题必须在运行期间解决,让错误的缔结者通过一些手续向接收者传递一些适当的信息,使其知道该如何正确地处理遇到的问题。在C++和其他早期语言中,可通过几种手续来达到这个目的。而且它们通常是作为一种规定建立起来的,而非作为程

2001-07-25 14:32:00 1142

原创 Thinking in Java 8

第7章 多形性“对于面向对象的程序设计语言,多型性是第三种最基本的特征(前两种是数据抽象和继承。”“多形性”(Polymorphism)从另一个角度将接口从具体的实施细节中分离出来,亦即实现了“是什么”与“怎样做”两个模块的分离。利用多形性的概念,代码的组织以及可读性均能获得改善。此外,还能创建“易于扩展”的程序。无论在项目的创建过程中,还是在需要加入新特性的时候,它们都可以方便地“成长”。通过合

2001-07-25 14:31:00 1324

原创 Thinking in Java 7

第6章 类再生“Java引人注目的一项特性是代码的重复使用或者再生。但最具革命意义的是,除代码的复制和修改以外,我们还能做多得多的其他事情。”在象C那样的程序化语言里,代码的重复使用早已可行,但效果不是特别显著。与Java的其他地方一样,这个方案解决的也是与类有关的问题。我们通过创建新类来重复使用代码,但却用不着重新创建,可以直接使用别人已建好并调试好的现成类。但这样做必须保证不会干扰原有的代码。

2001-07-25 14:29:00 1843

原创 Thinking in Java 6

第5章 隐藏实施过程“进行面向对象的设计时,一项基本的考虑是:如何将发生变化的东西与保持不变的东西分隔开。”这一点对于库来说是特别重要的。那个库的用户(客户程序员)必须能依赖自己使用的那一部分,并知道一旦新版本的库出台,自己不需要改写代码。而与此相反,库的创建者必须能自由地进行修改与改进,同时保证客户程序员代码不会受到那些变动的影响。为达到这个目的,需遵守一定的约定或规则。例如,库程序员在修改库内

2001-07-25 14:28:00 1062

原创 Thinking in Java 5

第4章 初始化和清除“随着计算机的进步,‘不安全’的程序设计已成为造成编程代价高昂的罪魁祸首之一。”“初始化”和“清除”是这些安全问题的其中两个。许多C程序的错误都是由于程序员忘记初始化一个变量造成的。对于现成的库,若用户不知道如何初始化库的一个组件,就往往会出现这一类的错误。清除是另一个特殊的问题,因为用完一个元素后,由于不再关心,所以很容易把它忘记。这样一来,那个元素占用的资源会一直保留下去,

2001-07-25 14:27:00 2075

原创 Thinking in Java 4

第3章 控制程序流程“就象任何有感知的生物一样,程序必须能操纵自己的世界,在执行过程中作出判断与选择。”在Java里,我们利用运算符操纵对象和数据,并用执行控制语句作出选择。Java是建立在C++基础上的,所以对C和C++程序员来说,对Java这方面的大多数语句和运算符都应是非常熟悉的。当然,Java也进行了自己的一些改进与简化工作。3.1 使用Java运算符运算符以一个或多个自变量为基础,可生成

2001-07-24 22:43:00 1416

原创 Thinking in Java 3

第2章 一切都是对象“尽管以C++为基础,但Java是一种更纯粹的面向对象程序设计语言”。无论C++还是Java都属于杂合语言。但在Java中,设计者觉得这种杂合并不象在C++里那么重要。杂合语言允许采用多种编程风格;之所以说C++是一种杂合语言,是因为它支持与C语言的向后兼容能力。由于C++是C的一个超集,所以包含的许多特性都是后者不具备的,这些特性使C++在某些地方显得过于复杂。Java语言首

2001-07-24 22:41:00 1302

原创 Thinking in Java 中文版 2

引言同人类任何语言一样,Java为我们提供了一种表达思想的方式。如操作得当,同其他方式相比,随着问题变得愈大和愈复杂,这种表达方式的方便性和灵活性会显露无遗。不可将Java简单想象成一系列特性的集合;如孤立地看,有些特性是没有任何意义的。只有在考虑“设计”、而非考虑简单的编码时,才可真正体会到Java的强大。为了按这种方式理解Java,首先必须掌握它与编程的一些基本概念。本书讨论了编程问题、它

2001-07-24 22:31:00 2115

原创 Thinking in Java中文版 1

“Thinking in Java”详细目录 写在前面的话引言1. 前提2. Java的学习3. 目标4. 联机文档5. 章节6. 练习7. 多媒体CD-ROM8. 源代码9. 编码样式10. Java版本11. 课程和培训12. 错误13. 封面设计14. 致谢第1章 对象入门1.1 抽象的进步1.2 对象的接口1.3 实现方案的隐藏1.4 方案的重复使用1.5 继承:重新使用接口1

2001-07-24 22:29:00 1408

原创 Windows 2000漏洞集锦5

MS SQL Server的SA空密码攻击  在Windows2000中,企业级的用户一般都会用到另一个微软的产品,这个产品就是数据库管理软件 MS SQL Server,但是在与MS SQL Server配合使用中,我们发现了很多的问题。最后我们就简单讲一下安装了MS SQL Server的Windows2000的网络操作系统普遍面临的安全问题。  在安装MS SQL Ser

2001-07-24 22:24:00 670

原创 Windows 2000漏洞集锦3

 奇怪的系统崩溃特性  此外Windows 2000有一个比较奇怪的特性,使用系统的终端用户可以通过按住右Ctrl,同时Press两次Scrool Lock按键,就轻易可以让整个Windows2000系统完全的崩溃。但同时又在C:/WinNT/下dump完整的当前系统内存记录,内存记录文件名是memory.dmp。当然,这个奇怪的特性默认状态下是关闭的,但是我们可以通过修改

2001-07-24 22:23:00 920

原创 Windows 2000漏洞集锦4

IIS服务泄漏文件内容  这是一个NSFOCUS安全小组发现的漏洞。当微软IIS 4.0/5.0(远东地区版本)在处理包含有不完整的双字节编码字符的HTTP命令请求时,会导致WEB目录下的文件内容被泄漏给远程攻击者。  Microsoft IIS远东地区版本包括中文(简体/繁体),日文,韩文版,由于特定的文字格式使它们都是使用的双字节编码格式。而当IIS接收到用户提交的一个HT

2001-07-24 22:23:00 1015

原创 Windows 2000漏洞集锦2

Windows 2000漏洞集锦2001-07-18 00:01:10· ·苗得雨··yesky NetBIOS的信息泄漏   接下来我们谈一下NetBIOS的共享入侵.这个问题从NT刚发行到现在就从来没有解决。而且它一直由来都是NT系统构架最常见的入侵手段。特别值得一提的就是那个IPC$Null session(空会话)在NT系统里都是已知的安全隐患。虽然打了

2001-07-24 22:22:00 854

原创 Windows 2000漏洞集锦

Windows 2000漏洞集锦2001-07-18 00:01:10· ·苗得雨··yesky1 2 3 4 5  下一页  对于Windows 2000的强大的功能和全新的构架我们都不得不叹服微软的实力,可以预见Windows 2000将成为新一代服务器操作系统的主流,同时也成为黑客攻击的对象。但是由于新的Windows2000的全新构架很大程度都依赖于Active Direc

2001-07-24 22:21:00 2627

原创 RMI规范(10)

RMI 通信协议 10.1 概述 RMI 协议使用另两个协议作为其在通信格式:Java 对象序列化和 HTTP。对象序 列化协议用于编组调用和返回数据。HTTP 协议用于“投寄”远程方法调用,并在 情况允许时获得返回数据。每种协议都有专门的语法文档。产品规则中的非终结 符号可能会引用其它协议(对象序列化或 HTTP)所管理的规则。在跨协议边界时 ,后续产品将使用该嵌入的协议。 关于语法符号

2001-07-24 20:33:00 842

原创 RMI规范(9)

第 9 章 本章中的接口和类用于 RMI 的分布式垃圾收集器 (DGC)。 主题: 接口 DGC Lease 类 ObjID 类 UID 类 VMID 类 9.1 接口 DGC DGC 抽象用于分布式垃圾收集算法的服务器端。此接口包含两种方法:dirty 和 clean。当远程引用在客户机(客户机由 VMID 表示)端解编时,将调用 dirty 。当客户机中不再存在对远程引用的引用时,将进

2001-07-24 20:32:00 744

原创 RMI规范(8)

第 8 章 本章包含 rmic stub 编译器生成的 stub 和 skleton 所用的接口和类。 主题: RemoteStub 类 RemoteCall 接口 RemoteRef 接口 ServerRef 接口 Skeleton 接口 Operation 类 8.1 RemoteStub 类 java.rmi.server.RemoteStub 类是远程对象 stub 的通用超类

2001-07-24 20:31:00 815

原创 RMI规范(7)

远程对象激活 ---------------------------------------------------------------------- ---------- 第 7 章 主题: 概述 激活协议 “可激活”远程对象的实现模型 激活接口 .1 概述 分布式对象系统被设计为支持长期存在的持久对象。假设这些系统将由成千(也 许成万)个这样的对象组成,则对象的实现在无限期的时

2001-07-24 20:30:00 900

原创 RMI规范(5)

RMI规范--第五章 服务器接口 java.rmi.server 包包含通常用于实现远程对象的接口与类。 主题: RemoteObject 类 RemoteServer 类 UnicastRemoteObject 类 Unreferenced 接口 RMISecurityManager 类 RMIClassLoader 类 LoaderHandler 接口 RMI 套接字工厂 RMIFai

2001-07-24 20:29:00 1004

原创 RMI规范(6)

注册服务程序接口 --------------------------------------------------------------------- ---------- 第 6 章 RMI 系统使用 java.rmi.registry.Registry 接口和 java.rmi.registry.Locat eRegistry 类来为按名字检索和注册对象提供众所周知的自举服务。

2001-07-24 20:29:00 1002

原创 RMI规范(3)

RMI规范--第三章 主题: Stub 与 skeleton 远程方法调用中的线程使用 远程对象的垃圾收集 动态类的加载 通过代理服务器透过防火墙的 RMI 3.1 Stub 与 skeleton 在与远程对象的通信过程中,RMI 将使用标准机制(用于 RPC 系统):stub 与 skeleton。远程对象的 stub 担当远程对象的客户本地代表或代理人角色。 调用程序将调用本地 s

2001-07-24 20:28:00 1034

原创 RMI规范(4)

RMI规范--第四章 客户机接口 程序员在编写使用远程对象的 applet 或应用程序时,需要注意 java.rmi 包 中可用的 RMI 系统客户机可视接口。 4.1 远程接口 package java.rmi; public interface Remote {} java.rmi.Remote 接口用来识别所有远程接口;所有远程对象必须直接或间接 实现此接口。 实现类可以

2001-07-24 20:28:00 1099

原创 RMI规范(2)

RMI规范--第二章 Java 分布式对象模型 2.1 分布式对象应用程序 RMI 应用程序通常包括两个独立的程序:服务器程序和客户机程序。典型的服务 器应用程序将创建多个远程对象,使这些远程对象能够被引用,然后等待客户机 调用那些远程对象上的方法。而典型的客户机程序则从服务器中得到一个或多个 远程对象的引用,然后调用远程对象的方法。RMI 为服务器和客户机进行通讯 和信息传递提供了一种机

2001-07-24 20:27:00 1845

原创 Java Applet 入门 21

Java Applet 入门yy435太平洋网络学院第六天一 图形文件的读入    在Java中,可以直接载入并输出图形文件格式, 一共有两种,分别是Gif和Jpeg文件(不要怀疑,真的不支持BMP文件格式)。只要你能够给定图形文件的位置和文件名,就可以通过getImage这个方法载入所要的图形。    在这里所说的位置,指的并不是在磁盘上的哪一个目录,而是图形文件所在的U

2001-07-24 15:51:00 954

原创 Java Applet 入门 20

Java Applet 入门yy435太平洋网络学院第五天线     程    前面我们所给出的程序例子,基本都是单线程的,即一个程序只有一条从头到尾的执行路线,然后在程序设计中,很多的时候,我们需要编写具有多线程的程序。这也就是今天要给大家说的线程的问题了。    多现成是指同时存在几个执行体,按几条不同的执行路线共同工作的情况。Java语言中,有一个重要的功能特点就是它

2001-07-24 15:50:00 787

原创 Java Applet 入门 19

Java Applet 入门yy435太平洋网络学院第四天键盘事件例子这个例子需要你先用鼠标在JavaApplet区域中点一下,然后就可以在键盘上面按键了,你的每一次按的什么键,都可以在屏幕上面显示出来,没有骗你,试试看吧!这个例子的源代码如下:import java.awt.Event ;import java.awt.Graphics ;

2001-07-24 15:48:00 640

原创 Java Applet 入门 18

Java Applet 入门yy435太平洋网络学院第四天鼠标事件例子2这个例子的源代码如下:import java.awt.*;import java.applet.* ;public class Mouse extends Applet { String msg="";//定义一条字符串变量,存储要输出的消息。 pub

2001-07-24 14:41:00 729

原创 Java Applet 入门 17

Java Applet 入门yy435太平洋网络学院第四天鼠标事件例子 1这个例子的源代码如下: import java.applet.*; import java.awt.*;//前面的例子中说过了的,就不再说了。 ^_^ public class Aa1 extends Applet { int cx=50; int

2001-07-24 14:40:00 678

原创 Java Applet 入门 16

Java Applet 入门yy435太平洋网络学院第四天鼠标和键盘事件处理函数所谓事件,就是指在系统中有某些我们所关心的事情(例如:鼠标移动了,用户按下了某个按键……等)发生了,然后系统便通知我们去处理这些事情。这样的概念在一般采用窗口用户界面环境的操作系统中,是十分常见的。在Java中,所有的事件都定义在类Event(java.awt.Event)内,读者有兴趣的话,可

2001-07-24 14:39:00 959

原创 Java Applet 入门 15

Java Applet 入门yy435太平洋网络学院第三天6.按 钮    按钮是图形界面中非常重要的一种 基本组件,按钮本身不显示信息,它一般对应一个事先定义好的功能操作,该操作 通常用一段程序来表示。当用户点击按钮 时,系统自动执行与该按钮相联系的程序, 从而完成预先指定的功能。      请看下面的例子:例子:提交: 取消: 要制作上面的按

2001-07-24 14:38:00 826

原创 Java Applet 入门 13

Java Applet 入门yy435太平洋网络学院第三天4.标 签标签,就是用户只能查看,不能修改的文本显示区域,它能起到信息说明的作用,每个标签用一个Label类的对象表示。请看例子:例子:上面的例子是怎样用JAVA实现的呢?它的语法如下:……//与前面的例子一样!1. Label prompt1=new Label("这是标签 1 !");

2001-07-24 14:37:00 676

原创 Java Applet 入门 14

Java Applet 入门yy435太平洋网络学院第三天5.文本编辑区(TextField和TextArea)     Java中用于处理文本的基本组件有两种:单行文本框 TextField 和 多行文本区域TextArea,他们都是TextCompponent的子类。在创建文本组件时可以同时指出文本组件中的初始文本字符串。例子:上面的例子

2001-07-24 14:37:00 923

原创 Java Applet 入门 11

Java Applet 入门yy435太平洋网络学院第三天2.单选按钮(CheckboxGroup)     上面的例子是怎样用JAVA实现的呢?它的语法如下:import java.awt .*;import java.applet .*;import java.awt.event .*;public class DanXuan extends

2001-07-24 14:36:00 748

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除