- 博客(17)
- 资源 (22)
- 收藏
- 关注
原创 UML边看边记 之 类与类之间的关系(三)
上一篇介绍了下类与类之间的关联关系。关联关系的种类比较多,所以单独写了一篇。这篇文章主要介绍:依赖关系、泛化关系、接口与实现类关系。1.依赖关系依赖关系值一个类的实现依赖另一个类。如,Driver类的drive方法依赖于Car类中的move()方法。 注意依赖关系与关联关系的区别:关联关系中一个类作为另一个类的属性存在,而依赖关系的属性中不存在另一个类。 依赖关系的UML图用带箭头的虚线表示。
2016-05-26 22:41:04 788
原创 UML边看边记 之 类与类之间的关系(二)
类和类之间的关系是多样的,在UML中使用不同的形式来表示。常见的类与类之间的关系包括:关联关系、依赖关系、泛化关系(即继承关系)、接口与实现关系。1.关联关系关联关系通常用来表示一种包含(contains)或者有(has)的关系。contains与has的区别,我的理解是一种表达关联强弱的一种区别。contains表示两个类可以独立存在,也可以某一个类包含(使用)另一个类(的功能);而has表示一个
2016-05-26 22:32:21 732
原创 UML边看边记 之 类(一)
MD,使用万恶的为知笔记,写好的东西都没有了!!又要重写!!最近在看Thrift源码,看到了TNonblockingServer,类与类之间的关系有点乱,打算使用UML类图来画一画,于是找了些资料,并记录下来,手打一遍,加深下印象。托为知笔记的褔,可以多加深一些印象了!主要的参考资料是:深入浅出UML类图系列UML不仅仅可以用来表示类以及类与类之间的关系。但是就像一个老外说的,你所看到的UML图,
2016-05-26 21:57:30 1049
原创 Markdown使用说明
欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦: Markdown和扩展Markdown简洁的语法 代码块高亮 图片链接和图片上传 LaTex数学公式 UML序列图和流程图 离线写博客 导入导出Markdown文件 丰富的快捷键 快捷键 加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl
2016-05-26 21:50:14 329
原创 子list中的顺序会影响list的顺序问题(二)
之前写的这篇文章 子list中的顺序会影响list的顺序问题 ,时隔两个多月的今天再去看发现有很多问题都没有阐述清楚,今天对其做一个补充说明。 存在的问题: (1)没有从JDK源码层面说明问题 (2)Arrays.asList(T… args)是一个变长参数方法,为什么传递数组会影响顺序,而传递多个离散的参数却会影响顺序呢?详见上一篇博文中 子list中的顺序会影响list的顺序问题 示例代
2016-05-24 22:17:10 2511
原创 Markdown的一些技法
这篇文章居中显示图片、连接图片居中 改变图片大小 连接居中 子list中的顺序会影响list的顺序问题 预留多行空白 改变字体颜色大小 红色的15号字体
2016-05-24 12:03:04 425
原创 NIO边看边记 之 管道Pipe(十一)
NIO支持管道操作。管道模型如下所示: 管道通常用来两个线程来传输数据。 其中SinkChannel用于往Pipe中写数据,SourceChannel用于从Pipe中读数据。 1.创建管道Pipe pipe = Pipe.open();2.写管道Pipe.SinkChannel sinkChannel = pipe.sink(); String newData = "New String
2016-05-04 21:34:14 1407
原创 NIO边看边记 之 DatagramChannel(十)
DatagramChannel是用于UDP网络的通道。 其打开、绑定、关闭操作跟SocketChannel一样。 由于使用的时UDP因此在读写数据时未必能保证可靠。 1.接收数据 通过receive()方法从DatagramChannel接收数据,如:ByteBuffer buf = ByteBuffer.allocate(48); buf.clear(); channel.receive(
2016-05-04 21:32:17 883
原创 NIO边看边记 之 ServerSocketChannel(九)
ServerSocketChannel是一个监听新进来TCP连接的通道。 1.打开ServerSocketChannel serverSocketChannel = ServerSocketChannel.open();2.绑定serverSocketChannel.socket().bind(new InetSocketAddress(9999));3.关闭serverSocketChannel
2016-05-04 21:27:31 541
原创 NIO边看边记 之 SocketChannel(八)
SocketChannel是一个连接到TCP的网络套接字通道。创建SocketChannel有两种方式: a.打开一个SocketChannel并连接到一台网络服务器 b.一个新连接到达ServerSocketChannel时,会创建一个SocketChannel1.打开SocketChannel socketChannel = SocketChannel.open(); socketChan
2016-05-04 21:25:42 473
原创 NIO边看边记 之 FileChannel(七)
FileChannel不可工作在非阻塞模式,不可以将FileChannel注册到Selector上。1.打开FileChannel不能直接打开,需要通过一个与之关联的FileInputStream、FileOutputStream或者RandomAccessFile来获得FilChannel。 如:RandomAccessFile randomAccessFile = new RandomAcce
2016-05-04 21:23:24 2029
原创 NIO边看边记 之 selector选择器(六)
Selector(选择器)可同时监听多个通道上感兴趣的事件(如accept事件、read就绪事件、write就绪事件)。使用Selector可以实现一个线程管理多个通道,进而可以管理多个连接。1.为什么要使用Selector如果不使用Selector要监听多个channel上感兴趣的事件,则需要多线程操作,一个线程监听一个通道的事件。这样导致线程上下文切换的开销(内存)、增加了编程的复杂度。2.Se
2016-05-04 21:20:41 4826
原创 NIO边看边记 之 通道之间的数据传输(五)
两个通道之间可以相互传输数据,但是至少一个通道得是文件channel。1.transferFrom()从一个channel中传输到另一个channel,目的channel作为调用方。 实例代码如下:RandomAccessFile fromFile = new RandomAccessFile("fromFile.txt", "rw"); FileChannel fromChannel
2016-05-04 21:10:28 659
原创 NIO边看边记 之 Scatter/Gather(四)
1.ScatterScatter(分散)操作是指可以将从channel中读取的内容分散的写到不同的buffer中。注意必须要先将前面的buffer写满之后才能写后面的buffer。因此,Scatter操作不支持动态消息(即不确定大小的消息) 实例代码如下:ByteBuffer header = ByteBuffer.allocate(128); ByteBuffer body = Byte
2016-05-04 21:07:33 704
原创 NIO边看边记 之 Buffer(三)
缓冲区Buffer其实就是一块内存区域。用于和channel来进行数据交互。从channel中读取数据到buffer,将buffer中的数据写到channel中。这块内存区域在java NIO中被封装成Buffer对象。Buffer的基本用法使用buffer进行读写数据一般会经过如下4个步骤: (1)从channel中读取数据写到buffer中 (2)调用buffer的flip()方法切换buf
2016-05-04 21:02:09 649
原创 NIO边看边记 之 channel(二)
通道channel就像流。通道中的数据总是先读到到buffer中(对于buffer来说是一个写操作),再从buffer中写到另一个通道总(相对于buffer来说是一个读操作)。 Channel主要分为两类:文件channel和网络channel,细分为4种。 FileChanel:从普通文件中读写数据 DatagramChannel:通过UDP读写网络中的数据 SocketChannel
2016-05-04 20:57:33 612 1
原创 NIO边看边记 之 概述(一)
声明:《NIO边看边记》系列的文章在学习NIO时,看到了并发编程网上有一个NIO系列教程。感觉写的不错,挺系统,于是边看边记了下来,相当于笔记吧。不是故意侵权。并发编程网 NIO教程系列 JDK1.4之后,java推出了NIO(New IO)。JDK1.4之前的IO只能基于流(stream)的方式逐个字节逐个字节的读取和写入。流处理方式性能比较低;NIO采用块的方式(Buffer)处理数据,性能大
2016-05-04 20:53:31 640
keil uvision 3 注册机 带CID的
2013-01-23
hex转coe工具
2013-01-17
数据结构 严蔚敏 C语言版 括号匹配
2013-01-16
数据结构严蔚敏C语言版 迷宫
2013-01-16
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人