Java SE
文章平均质量分 64
qgmobile_conghua
这个作者很懒,什么都没留下…
展开
-
Java SE --- 新I\O
新IO与传统IO不同之处: 采用内存映射文件的方式来处理输入/输出,将文件或文件的一段区域映射到内存中,这样就可以像访问内存一样访问文件。新IO的两个核心对象:Channel(通道)和Buffer(缓冲) Channel是传统IO系统中得模拟,在新的IO系统中所有数据原创 2011-10-03 12:31:58 · 352 阅读 · 0 评论 -
异常捕捉陷阱
finally执行规则: eg1: try{ Systrm.exit(0) ; }finally{ System.out.peintln("finally 块!"); } 不论try块正常结束或者非正常结束,finally的确会执行;但是上述例子不会输出finally块内容,因为Syste原创 2012-07-14 02:27:42 · 775 阅读 · 0 评论 -
新I/O(Channel)
通道(Channel)主要提供与I/O服务的直接连接,用于在字节缓冲区和位于通道另一侧的实体(通常是文件或者套接字)之间有效地传输数据。通道是一种途径,借助该途径,可以用最小的总开销来访问操作系统本身的I/O服务。缓冲区则是通道内部用来发送和接收数据的端点。通道充当连接I/O服务的导管:如图Channel的UML类图:通道类型:I/O从广义上分类(File I/O和St原创 2012-06-26 17:30:06 · 587 阅读 · 0 评论 -
运行环境交互
用户的键盘输入: 1、运行程序参数:运行程序后面紧跟多个字符串(空格隔开)会一次赋给args数组元素,如过字符串本身包括空格应该用双引号“”括起来 2、Scanner获取输入:基于正则表达式的文本扫描器,nextXxx()获取输入项,使用空白作为分隔符,如果想改变分隔符,每次读取一行,可以设置分隔符为回车符(useDelimiter(String pattern))。原创 2012-06-26 17:27:42 · 315 阅读 · 0 评论 -
新I/O(Buffers)
新的Buffer是常规Java类和通道之间的纽带。通道可以提取缓冲区中的数据(写操作),也可以向缓冲区存入数据(读操作)。还有一种特殊类型的缓冲区,用于内存映射文件。Buffer家族:缓冲区是包在一个对象内的基本数据元素数组。Buffer类相比一个简单数组的优点是它将关于数据的数据内容和信息包含在一个单一的对象中。(1)缓冲区属性: 容量(capacity):缓冲区容原创 2012-06-26 17:25:52 · 547 阅读 · 0 评论 -
多线程
进程:一个程序进入内存运行,即变成一个进程,有一定独立功能,是系统资源分配和调度的一个独立单位,具有独立性、动态性、并发性。线程:成为轻量级进程,是进程执行单元;可以拥有自己的堆栈、程序计数器和局部变量,但不拥有系统资源,与父进程的其他线程共享该进程所拥有的全部资源。并行:指同一时刻,有多条指令在多个处理器上同时执行,并发:指同一时刻只能有一条执行执行,但多个进程指令被快速轮换执行,使原创 2012-06-25 16:52:04 · 414 阅读 · 0 评论 -
网络编程基础
网络基础: 计算机网络协议三个组成部分: 1、语义部分:用于决定双方对话类型 2、语法部分:用于决定双方对话格式 3、变化规则:用于决定通信双方的应对关系 ISD分层:物理层、数据链路层、网络层、传输层、会话层、表示层、应用层 TCP/IP分层: IP(Internet Protocol)协议:互联网协议,支持网间互联的数据报协议,提供网间连接的完善功能,包括I原创 2012-06-25 16:49:33 · 418 阅读 · 0 评论 -
套接字
TCP套接字: TCP连接:是一条抽象的双向信道,两端分别由IP地址和端口号确定。 连接:三次握手连接(1是能接收连接,2连接是否成功,3接收是否成功)。 典型客户端请求连接: (1)创建Socket对象,构造函数向指定的远程主机和端口建立一个TCP连接; (2)通过套接字的输入输出流(I/O streams)进行通信;原创 2012-06-25 16:39:45 · 371 阅读 · 0 评论 -
JDBC连接数据库流程
JDBC驱动: 第一种JDBC驱动:JDBC-ODBC桥,这种驱动是最早实现的驱动程序,将JDBC API映射到ODBC API。 第二种JDBC驱动:直接将JDBC API映射成数据库特定客户端API,包含特定数据库的本地代码,用于访问特定数据库的客户端。 第三种JDBC驱动:支持三层结构的JDBC访问方式,主要用于applet阶段,通过applet访问数据原创 2012-06-25 16:36:58 · 485 阅读 · 0 评论 -
Java集合实现细节
Map和Set的关系:Map集合的所有key具有Set集合的特征,只要把Map的所以key集合起来,就是一个Set,实现了从Map到Set的转换;当Set的每个元素都是key-value组(Map.Entry),则可以扩展为Map。HashMap和HashSet: 对于HashSet,系统采用Hash算法决定集合元素的存储位置,可以保证快速存取集合云素;对于HashMap,系原创 2012-07-05 01:58:38 · 670 阅读 · 0 评论 -
数组与内存控制
数组初始化方式(Java数组是静态的,初始化后,数组长度不可变):1、静态初始化:初始化时显示指定数组元素值,系统决定长度;2、动态初始化:初始化时指定长度,系统为数组分配初始值。Java数组变量是一种引用类型的变量,数组变量不是数组本身,只是指向堆内存中的数组对象,因此可以改变一个数组变量引用的数组,造成数组长度改变的假象。所有局部变量都是放在栈内存里保存的,不管是基本类原创 2012-07-05 01:50:26 · 300 阅读 · 0 评论 -
Java SE --- 反射机制
一、什么是反射:反射的概念由smith在1982年提出,只要是指程序可以访问、检测和修改它本身状态或行为的一种能力。最先被程序设计语言领域采用,现在也应用到了操作系统和文件系统中。在计算机科学领域,反射是指一类应用,它们能够自描述和子控制。也就是这类事物通过某种机制实现对自己行为的描述和检测,并跟进自身行为状态和结果,调整和修改应用所描述行为的状态和相关语义。二、什么事Java中得反射原创 2012-02-04 21:14:06 · 422 阅读 · 0 评论 -
Java SE --- 集合
Java集合(Collection)分为三种体系:List、Set、Map。List表示有序、重复集合;Set表示无序、不重复集合;Map表示有映射关系集合。Iterator接口: 也是Collection成员,但不是用来盛装对象,主要用于遍历(迭代访问)Collection集合中元素,成为迭代器。Iterator必须依附Collection对象,有Iterator对象必原创 2012-02-04 21:11:08 · 488 阅读 · 0 评论 -
表达式陷阱
字符串的陷阱: String java = new String("Hello") ; //创建了两个对象:1、Hello直接量对应字符串对象;2、new String()构造器返回的字符串对象 对于Java程序的字符直接量,JVM会用一个字符串池保存他们:当第一次使用时,JVM会把它放入字符串池进行缓存,一般情况下,字符串池对象不会被垃圾回收,当程序再次需要使用该字符串原创 2012-07-14 02:30:42 · 671 阅读 · 0 评论