吾尝终日而思矣——2019.02.19

1.享元模式(Flyweight Pattern)

享元模式意在减少新对象的产生,为一个对象建立一个享元工厂类,一般包含一个HashSet容量池。使用工厂类创建新对象,当对象未创建过,创建新对象并存入HashSet里,如果已存在就从HashSet取出,这样就能共享一些对象。

PS:这个意译得反而让人摸不着头脑,Flyweight是轻量级的意思。

引用:https://www.cnblogs.com/adamjwh/p/9070107.html

2.装饰器模式

当我们需要对一个类添加功能时,我们可以选择继承一个子类。但是,我们有时候需要给不同子类添加一样的功能,同时希望这些功能时动态的,可以取消或者更改的。对此,我们再创建一个子类,称之为装饰器,并添加这些功能,我们用子类创建对象的时候使用这些装饰器,达到拓展的目的。我们将子类传入装饰器,通过父子类的上下转型,就可以返回一个加强后的子类。

引用:http://www.runoob.com/design-pattern/decorator-pattern.html

3.java大数据处理调优

引用:https://www.cnblogs.com/law-luffy/p/6061183.html

4.IO与NIO

NIO主要有三大核心部分:Channel(通道),Buffer(缓冲区), Selector。传统IO基于字节流和字符流进行操作,而NIO基于Channel和Buffer(缓冲区)进行操作,数据总是从通道读取到缓冲区中,或者从缓冲区写入到通道中。Selector(选择区)用于监听多个通道的事件(比如:连接打开,数据到达)。因此,单个线程可以监听多个数据通道。

NIO和传统IO(一下简称IO)之间第一个最大的区别是,IO是面向流的,NIO是面向缓冲区的。

IO的各种流是阻塞的,NIO是非阻塞的。

https://www.cnblogs.com/xiaoxi/p/6576588.html

https://blog.csdn.net/u011381576/article/details/79876754

5.JAVA锁有哪些种类

https://blog.csdn.net/u010251897/article/details/80840027

原文地址:https://www.cnblogs.com/chrisweiii/p/10402492.html

时间: 2024-11-04 21:13:22

吾尝终日而思矣——2019.02.19的相关文章

吾尝终日而思矣——2019.02.12

1.java中的final与C++中的const的区别 (1)final在java中定义常量,可作用于基本类型或者类类型,若是作用于类类型,则此类类型不能作为父类被继承,也就是说它的下面不能有子类,这样的类叫做原子类. . C++中的const定义常量. (2)Java中的final如果是对于基本类型,那和C++   const是一样的  但是如果是对对象而言,不同了 (3)final表示这个句柄是不可改变的    final   Object   obj=(Object)new   Strin

吾尝终日而思矣——2019.02.27

1.node.js 64 位安装包下载地址 : https://nodejs.org/dist/v4.4.3/node-v4.4.3-x64.msi 检测PATH环境变量是否配置了Node.js,点击开始=>运行=>输入"cmd" => 输入命令"path" 检查Node.js版本:node --version 2.项目生成package.json文件 cmd进入项目文件夹,$ npm init 所有问题之中,只有项目名称(name)和项目版本(v

PAT 甲级 A1048 (2019/02/19)

#include <cstdio> #include <algorithm> using namespace std; const int N = 1005; int HashTable[N]; int main() { int n, m, a; scanf("%d %d", &n, &m); for(int i = 0; i < n; i++) { scanf("%d", &a); ++HashTable[a]

PAT 甲级 A1077 (2019/02/19)

#include<cstdio> #include<cstring> int n, minlen = 256, cnt = 0; char str[100][256]; int main(){ scanf("%d", &n); getchar(); //接收换行符 for(int i = 0; i < n; i++){ fgets(str[i],256,stdin); int len = strlen(str[i])-1; if(len <

PAT 甲级 A1033 (2019/02/19)

#include<cstdio> #include<algorithm> using namespace std; const int INF = 1000000000; //初始化最低油价 struct station{ double oil_price; //加油站油价 int distance; //加油站离出发点的距离 }sta[501]; bool cmp(station a, station b){ return a.distance < b.distance;

PAT 甲级 A1070 (2019/02/19)

#include<cstdio> #include<algorithm> using namespace std; struct Mooncake{ double inventory; //库存 double total_value; //总价 double unit_price; //单价 }cake[1001]; bool cmp(Mooncake a, Mooncake b){ return a.unit_price > b.unit_price; //按照单价从高到低

PAT 甲级 A1050 (2019/02/19)

#include<cstdio> #include<cstring> char str1[10010], str2[10010]; bool HashTable[128]; int main(){ fgets(str1,10010,stdin); fgets(str2,10010,stdin); int len1 = strlen(str1); int len2 = strlen(str2); for(int i = 0; i < len2; i++){ HashTable[

【谜客帝国】第147届月思主擂谜会(2019.02.15)

 [谜客帝国]第147届月思主擂谜会(2019.02.15) 主持计分:东东 1.“人在中天日月间”(9笔字)春/月思 [注:面出陈孚<开平即事二首>,“势超大地山河上,-.”] 2. 玉漏声中烟气袅(3字法国奢侈品牌)YSL/月思 3. 双双相念初相爱(2字著名动漫人物)菜菜/月思 4.“数点燕云州外.雪霜威”(足球用语二,4+3)4132.451/月思 [注:面出余文<相见欢>,“登高望断龙旗,未曾归.几度中原北定,梦依稀.朔风乱,胡尘漫,掩斜晖.-.”] 5.“十载同心如一人

2017.02.19学习C#的第二天,今天我学到了什么?

2017.02.19,今天是学习C#的第二天,今天学习的是: 1.数据类型:(以下是现阶段编程中最经常用到的类型) (1)整型 (2)浮点型 (3)字符型 (4)布尔型 (5)字符串型 (6)日期时间型 2.变量/常量 3.类型转换 (1)显示转换 (2)隐式转换 4.转义字符 一,基本数据类型介绍 1.整形(主要差别在取值范围) (1)byte 取值范围(0--225),超出后系统报错. (2)short 取之范围:byte < shor t< int      快捷方式为Int16 (3)