Java面试
JinLiang16353
专注决定高度
展开
-
适配器模式
适配器模式模式定义适配器模式:将一个类的接口,转换成客户期望的另一个接口。适配器让原本接口不兼容的类可以合作无间。适配器模式类图对象适配器/** * 对象适配器 */public class ObjectAdapter { public static void main(String[] args) { Adaptee adaptee = new Adaptee(); Target target = new Adapter(adaptee);原创 2022-04-25 23:55:42 · 119 阅读 · 0 评论 -
GPG、PGP加密&解密
GPG加密&解密PGP介绍PGP是一种用于数据加密和数字签名的程序,它使得一般人也可以很容易地对数据文件、邮件进行加密;PGP拥有“信任网络(Web of Trust)”的美称。PGP主要的特点是它可以在一个非线程安全的网络环境下,使得从未谋面的人取得信任。这个软件非常好用,迅速流传开来,成了许多程序员的必备工具。但是,它是商业软件,不能自由使用。所以,自由软件基金会决定,开发一个PGP的替代品,取名为GnuPG。这就是GPG的由来。1. Centos7安装GPG,并导出公钥# 安装gn原创 2021-04-28 17:40:47 · 3068 阅读 · 0 评论 -
Java Md5加密再转成Base64编码
Java Md5加密再转成Base64编码需求描述Hexadecimal -> base64 string decoder 16进制转 Base64给定入参,先生成32位的Md5消息摘要,再通过Base64编码Base64(Md5(value))/** * MD5生成32位 * @param inStr 加密的字符串 * @return 加密后的结果 * @throws Exception */public String md5Encode(String inStr原创 2021-04-15 15:28:56 · 811 阅读 · 0 评论 -
Java加密&解密-Base64
Base64Base64 算法定义Base64是一种基于64个字符的编码算法,根据RFC 2045的定义:Base64内容传送编码是一种以任意8位字节序列组成的描述形式,这种形式不容易被人直接识别。经过Base64编码后的数据会比原始数据略长,为原来的4/3倍数。经过Base64编码后的字符串的字数是以4为单位的整数倍。Base64字符映射表 /** * This array is a lookup table that translates 6-bit positive i原创 2021-04-14 10:52:41 · 296 阅读 · 0 评论 -
软件设计原则
软件设计原则1.开闭原则定义:当应用的需求改变时,在不修改软件实体的源代码或者二进制代码的前提下,可以扩展模块的功能,使其满足新的需求。作用:1. 对软件测试的影响软件遵守开闭原则的话,软件测试时只需要对扩展的代码进行测试就可以了,因为原有的测试代码仍然能够正常运行。2. 可以提高代码的可复用性粒度越小,被复用的可能性就越大;在面向对象的程序设计中,根据原子和抽象编程可以提高代码的可复用性。3. 可以提高软件的可维护性遵守开闭原则的软件,其稳定性高和延续性强,从而易于扩展和维护。2原创 2020-12-19 09:05:07 · 136 阅读 · 1 评论 -
1.TCP/IP四层模型?
TCP/IP 四层模型1. 应用层应用层决定了向用户提供应用服务时通信的活动。FTP协议、DNS、HTTP协议2. 传输层传输层对上接应用层,提供处于网络连接中的两台计算机之间的数据传输。TCP(传输控制协议)、UDP(用户数据报协议)3. 网络层网络层用来处理在网络上流动的数据包。数据包是网络传输的最小数据单位。该层规定了通过怎样的路径(所谓的传输线)到达对方计算机,并把数据包发送给...原创 2019-06-07 01:07:15 · 201 阅读 · 0 评论 -
2.TCP三次握手、四次挥手
TCP三次握手客户端发送一个带SYN的数据包给服务端。服务端接收到后,回传一个带有SYN/ACK标志的数据包以示传达确认信号。客户端再发送一个带有ACK的数据包给服务端,代表“握手”结束。TCP四次挥手...原创 2019-06-08 00:26:19 · 121 阅读 · 0 评论