摘要: 动态库编译 新建一个hello.c和hello.h,待会会将它编译成动态库 #include <stdio.h> void hello (void) { printf("this is hello\r\n"); } #ifndef __HELLO_H #define __HELLO_H void h 阅读全文
posted @ 2021-03-06 13:08 kmpro 阅读(697) 评论(0) 推荐(0)
摘要: 我总结了Java数据比较主要有以下要点: 1.基本类型和基本类型对比; 2.基本类型和包装类型比较; 3.包装类型和包装类型比较; 4.”==“与”equal“比较方式; 5.[-128,127]与非[-128,127]范围的数据比较; 6.String包装类型的比较。 基本类型和基本类型对比 基本 阅读全文
posted @ 2020-12-13 19:19 kmpro 阅读(1737) 评论(0) 推荐(1)
摘要: 这里使用fastjson来进行解析,fastjson里有两个重要的对象JSONObject和JSONArray。看下面的json字符串,meta、data属于JSONObject,data子集因为有[ ]所以子集属于JSONArray。 1 { 2 "meta": { 3 "page": 1, 4 阅读全文
posted @ 2020-12-05 23:20 kmpro 阅读(1066) 评论(0) 推荐(0)
摘要: 今天用wireshark抓取TCP连接时的报文发现客户端的Win变大了,这里是使用了Window Scale来扩张TCP接收窗口,使得接收窗口可以大于65535字节。 首先1号包是TCP第一次握手连接时客户端的请求包,客户端如果窗口大于65535,那么就先将Window size value设置为6 阅读全文
posted @ 2020-11-26 21:08 kmpro 阅读(1069) 评论(0) 推荐(0)
摘要: TCP连接时有一个重要的任务就是服务端和客户端双方互相确认收发功能是否正常。图中步骤1,当客户端发起连接,服务端接收到请求,对于服务端来说,它此时知道客户端的发送功能和自己的接收功能是正常的。 图中步骤2,当客户接收到服务端应答,对于客户端来说,它此时知道自己的收发功能和服务端的收发功能都是正常的。 阅读全文
posted @ 2020-11-23 21:34 kmpro 阅读(338) 评论(0) 推荐(0)
摘要: 工厂模式的作用 工厂模式有如下作用: 实现代码解耦,客户端只负责使用类的方法,类的实例化工作由工厂负责; 简化客户端获取类实例的过程,有些类的实例化过程较复杂,利用工厂可以将这一过程代码进行封装; 减少代码修改,使代码可复用。客户端可能多处实例化同一个类,如果实例化代码需要修改则只要修改工厂即可,这 阅读全文
posted @ 2020-05-24 16:50 kmpro 阅读(139) 评论(0) 推荐(0)