- 博客(8)
- 收藏
- 关注
原创 工廠方法模式-設計模式
工廠方法模式通過引入抽象工廠類的方式使得系統更加符合開閉原則,是對簡單工廠模式的優化。下面我們用一個例子來模擬一下工廠方法模式首先創建抽象工廠package FactoryMethodPattern;public interface LoggerFactory { public Logger createLogger();}創建具體工廠類packag...
2019-03-27 10:29:18
268
原创 簡單工廠模式--Java設計模式
簡單工廠模式:定義一個工廠類,它可以根據不同的參數返回不同類的實例,被創建的實例通常都具有共同的父類。簡單工廠模式結構比較簡單:包含三個核心角色,Factory,Prodcut,ConcreteProduct(具體產品角色)下面用一個簡單的例子來模擬一下工廠模式的實現首先定義抽象產品類package SimpleFactoryPattern;//抽象產品類public i...
2019-03-26 11:06:41
228
原创 設計模式概述/23種設計模式
前情提要:設計模式是前人根據大量的軟件開發經驗總結出的問題解決方案,我們要做的是學習它的思想,千萬不要生搬硬套。設計模式是在特定環境下為解決某一通用問題提供的一套定製的解決方案,該方案描述了對象與類的相互作用。設計模式的基本要素:1.模式名稱:大多數模式都是根據其功能或模式結構來命名,爲了開發人員能更好的理解模式並方便相互之間的交流。2.問題:問題描述了應該在何時使用設計模式,...
2019-03-26 09:09:30
463
原创 NIO(非阻塞IO)實現通信
import java.net.InetSocketAddress;import java.net.SocketAddress;import java.nio.ByteBuffer;import java.nio.channels.SelectionKey;import java.nio.channels.Selector;import java.nio.channels.ServerS...
2019-03-25 15:14:35
208
原创 BIO(阻塞IO模型)+Socket網絡通信
創建服務端import java.io.IOException;import java.net.ServerSocket;import java.net.Socket;public class BIOServerSocket { public static void main(String[] args) throws IOException { Server...
2019-03-25 11:57:06
356
原创 java生成验证码
不多BB,直接看代码package cn.java.utils;import java.awt.Color;import java.awt.Font;import java.awt.Graphics;import java.awt.image.BufferedImage;import java.io.FileNotFoundException;import java.io.File...
2019-03-17 16:57:28
166
原创 HashMap中hash算法的实现原理,为什么?
首先将高16位无符号右移16位与低十六位做异或运算。如果不这样做,而是直接做&运算那么高十六位所代表的部分特征就可能被丢失 将高十六位无符号右移之后与低十六位做异或运算使得高十六位的特征与低十六位的特征进行了混合得到的新的数值中就高位与低位的信息都被保留了 ,而在这里采用异或运算而不采用& ,| 运算的原因是 异或运算能更好的保留各部分的特征,如果采用&运算计算...
2018-06-05 20:42:42
5720
2
原创 java设计模式——(适配器模式)
使用抽象类或接口时需要有子类来继承抽象类或实现接并实现它们的抽象方法,然后在主函数main方法中创建对象的实例并调用其成员方法。这时我们可以采用创建匿名内部类对象的方式在主函数的main方法中直接创建抽象类或接口的实例并实现其抽象方法,然而在这些抽象类或接口中可能有许多抽象方法同时我们在主函数中要创建许多对象的实例,因此我们不得不在main方法一一实现这些抽象方法,但有些抽象方法是我们不经常使用的...
2018-05-27 19:46:26
265
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人