摘要: 引言HTTP是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。它于1990年提出,经过几年的使用与发展,得到不断地完善和扩展。目前在WWW中使用的是HTTP/1.0的第六版,HTTP/1.1的规范化工作正在进行之中,而且HTTP-NG(Next Generation of HTTP)的建议已经提出。HTTP协议的主要特点可概括如下:1.支持客户/服务器模式。2.简单快速:客户向服务器请求服务时,只需传送请求方法和路径。请求方法常用的有GET、HEAD、POST。每种方法规定了客户与服务器联系的类型不同。由于HTTP协议简单,使得HTTP服务器的程序规模小,因 阅读全文
posted @ 2012-05-08 20:50 cateatmycode 阅读(187) 评论(0) 推荐(0)
摘要: 相关链接:http://lips.lis.ntu.edu.tw/ytchiang/study/others/tcpiposi.htmOSI模型,即开放式通信系统互联参考模型(Open System Interconnection Reference Model),是国际标准化组织(ISO)提出的一个试图使各种计算机在世界范围内互连为网络的标准框架,简称OSI。OSI是一个开放性的通行系统互连参考模型,他是一个定义的非常好的协议规范。OSI模型有7层结构。网络七层协议 - 网络七层协议计算机网络中的七层协议:OSI是一个开放性的通行系统互连参考模型,他是一个定义的非常好的协议规范。OSI模型有7 阅读全文
posted @ 2012-05-08 18:10 cateatmycode 阅读(476) 评论(0) 推荐(0)
摘要: 注:java中的Map、HashMap类似于C#中的Dictionary如:Javaimport java.util.*;Map map = new HashMap();map.add(o);C#using system;using system.Collections.Generic;IDictionary map = new Dictionary();map.Add(o);-----------------------------------------分割线------------------------------------------------有序否允许元素重复否Collecti 阅读全文
posted @ 2012-05-08 16:29 cateatmycode 阅读(347) 评论(0) 推荐(0)
摘要: 面向对象的软件开发和设计的目标之一就是高聚合性和低耦合性,用简单直白的说法,最大聚合就是指类(模块)的封装性要好,功能紧凑而独立;最小耦合就是指类(模块)之间的关联和牵扯越少越好用术语解释:聚合和耦合是与类和服务相关联的概念。聚合是类(服务)内各条语句相互关联程度的量度,程度(从高到低):功能、信息、通信、过程、时间、逻辑、偶然,聚合度越高越好。耦合是模块(服务)间关联程度的量度。程度(从高到低):内容、公共、控制、标志、数据、无耦合,偶合度越低越好。实际上在做开发时,无耦合是不可能的,理想的是数据耦合(通过接口传递数据)。参考:http://msdn.microsoft.com/zh-cn/ 阅读全文
posted @ 2012-05-08 15:02 cateatmycode 阅读(1067) 评论(0) 推荐(0)
摘要: 下面主要介绍JAVA中的堆、栈和常量池:1.寄存器最快的存储区, 由编译器根据需求进行分配,我们在程序中无法控制。2. 栈存放基本类型的变量数据和对象的引用,但对象本身不存放在栈中,而是存放在堆(new 出来的对象)或者常量池中(字符串常量对象存放在常量池中。)3. 堆存放所有new出来的对象。4. 静态域存放静态成员(static定义的)5. 常量池存放字符串常量和基本类型常量(public static final)。6. 非RAM存储硬盘等永久存储空间这里我们主要关心栈,堆和常量池,对于栈和常量池中的对象可以共享,对于堆中的对象不可以共享。栈中的数据大小和生命周期是可以确定的,当没有引用 阅读全文
posted @ 2012-05-08 14:46 cateatmycode 阅读(217) 评论(0) 推荐(0)
摘要: 栈与堆都是Java用来在Ram中存放数据的地方。与C++不同,Java自动管理栈和堆,程序员不能直接地设置栈或堆。Java的堆是一个运行时数据区,类的对象从中分配空间。这些对象通过new、newarray、anewarray和multianewarray等指令建立,它们不需要程序代码来显式的释放。堆是由垃圾回收来负责的,堆的优势是可以动态地分配内存大小,生存期也不必事先告诉编译器,因为它是在运行时动态分配内存的,Java的垃圾收集器会自动收走这些不再使用的数据。但缺点是,由于要在运行时动态分配内存,存取速度较慢。栈的优势是,存取速度比堆要快,仅次于寄存器,栈数据可以共享。但缺点是,存在栈中的数 阅读全文
posted @ 2012-05-08 11:45 cateatmycode 阅读(845) 评论(3) 推荐(0)
摘要: 堆和栈的区别一、预备知识—程序的内存分配一个由c/C++编译的程序占用的内存分为以下几个部分1、栈区(stack)—由编译器自动分配释放,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。2、堆区(heap)—一般由程序员分配释放,若程序员不释放,程序结束时可能由OS回收。注意它与数据结构中的堆是两回事,分配方式倒是类似于链表,呵呵。3、全局区(静态区)(static)—,全局变量和静态变量的存储是放在一块的,初始化的全局变量和静态变量在一块区域,未初始化的全局变量和未初始化的静态变量在相邻的另一块区域。-程序结束后有系统释放4、文字常量区—常量字符串就是放在这里的。程序结束后 阅读全文
posted @ 2012-05-08 11:13 cateatmycode 阅读(344) 评论(0) 推荐(0)