- 博客(22)
- 收藏
- 关注
转载 单例模式(包括单例模式的线程安全模式)
单例模式的线程安全有两种写法: 饿汉法懒汉模式(上锁) 转自:https://www.cnblogs.com/andy-zhou/p/5363585.html单例模式可能是代码最少的模式了,但是少不一定意味着简单,想要用好、用对单例模式,还真得费一番脑筋。本文对Java中常见的单例模式写法做了一个总结,如有错漏之处,恳请读者指正。饿汉法顾名思义,饿汉法就是在第...
2018-11-22 22:17:55
1007
1
转载 Java实现栈和队列
Java实现栈和队列栈:LIFO(后进先出)队列:FIFO(先进先出)栈的顺序存储结构实现:/** * 基于数组实现的顺序栈 * @param <E> */public class Stack<E> { private Object[] data = null; private int maxSize=0; //栈容量 ...
2018-10-28 21:16:36
623
转载 Java并发编程:Lock
从Java 5之后,在java.util.concurrent.locks包下提供了另外一种方式来实现同步访问,那就是Lock。 也许有朋友会问,既然都可以通过synchronized来实现同步访问了,那么为什么还需要提供Lock?这个问题将在下面进行阐述。本文先从synchronized的缺陷讲起,然后再讲述java.util.concurrent.locks包下常用的有哪些类和接...
2018-09-24 15:50:32
143
转载 广义表最基本的操作:取表头head(LS)与取表尾tail(LS)
牛客网考题:已知广义表: A=(a,b), B=(A,A), C=(a,(b,A),B), 求下列运算的结果:tail(head(tail(C))) =( ) head() 返回列表的第一个元素;tail() 返回列表的删去第一个元素之后的剩余列表;所以,tail(C)=((b,A),B);head(tail(C))=head( ((b,A),B) )=(...
2018-09-01 20:03:51
26777
4
转载 堆排序(大根堆、小根堆)
转自百度知道:https://jingyan.baidu.com/article/5225f26b057d5de6fa0908f3.html 堆 堆实际上是一棵完全二叉树,其任何一非叶节点满足性质: Key[i]<=key[2i+1]&&Key[i]<=key[2i+2]或者Key[i]>=Key[2i+1]&&k...
2018-08-23 21:21:16
23435
转载 正则、转载
转载:https://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000/001386832260566c26442c671fa489ebc6fe85badda25cd000 字符串是编程时涉及到的最多的一种数据结构,对字符串进行操作的需求几乎无处不在。比如判断一个字符串是否是合法...
2018-08-16 19:57:34
122
转载 wait()、notifyAll()、notify()
转载文章正在运行的程序称作一个进程,一个进程可以包含多个线程,这些线程可以共享进程的资源,它们共用一块存储空间。那么,各个线程在访问同一个数据对象的同时,可能引起冲突,以生产者、消费者为例,就会出现队列中没有产品的情况下,消费者扔到队列中去拿产品,与现实世界中逻辑不相符合。使用synchronized关键字可以确保线程的安全运行。 synchronized(obj){ ...
2018-08-16 19:46:10
115
原创 Java SE
# Java SE #***##每一个java程序员的第一个源代码 # class a{ public static void main(String[] args){ System.out.println("helloword!"); } }## 字符串大写字母排序 ##输入一串字符串分别统计各大
2018-02-03 21:17:53
176
转载 进程的描述与控制
进程的定义:由程序段、相关的数据段和PCB三部分便构成了进程实体(又称进程映像)。一般情况,我们把进程实体就简称为进程。 (1)进程是程序的一次执行。 (2)进程是一个程序及其数据在处理机上顺序执行时所发生的活动。 (3)进程是具有独特功能的程序在一个数据集合上运行的过程,它是系统进行资源分配和调度的一个独立单位。进程的特征:动态性,并发性,独立性,异步性。进程的三种基本
2017-12-25 16:34:17
319
原创 linux上实现邮箱系统
邮箱三种协议: SMTP: Simple Mail Transfer Protocol LMTP 本地 ESMTP:(Extended SMTP) 是对标准 SMTP 协议进行的扩展。它与 SMTP 服务的区别仅仅是,使用 SMTP 发信不需要验证用户帐户,而用 ESMTP 发信时,服务器会要求用户提供用户名和密码以便验证身份。在所有的验证机制中,信息全部采用Base6
2017-12-02 22:34:06
2526
原创 操作系统引论
操作系统(Operating System,OS)是配置在计算机硬件上的第一层软件,是对硬件系统的首次扩充。其次主要作用是管理好这些设备,提高它们的利用率和系统吞吐量,并为用户和应用程序提供一个简单接口,便于用户使用。OS是现代计算机系统中最基本和最重要的系统软件,而其他的诸如编译程序,数据库管理系统等系统软件,以及大量的应用软件,都直接依赖于操作系统的支持,取得它所提供的服务。事实上OS已成为现
2017-11-29 20:27:44
386
原创 dns服务
//挂在驱动mount /dev/sr0 /mnt//到处都是小空格,尤其配置文件中少一个都出大问题//安装bindyum instand bind -y//配置named.conf[root@localhost ~]# vim /etc/named.confoptions { listen-on port 53 { 192.168.177.131; };
2017-11-28 00:10:12
221
转载 linux基础系统目录
//linux基础系统目录/ 根分区,所有的文件和目录的起始点 只有root用户对此目录拥有写权限。/etc 配置文件,包含所有应用程序的配置文件,也包含启动、关闭某个特定程序的脚本。 /etc/rc 或 /etc/rc.d 或 /etc/rc?.d : 启动、或改变运行级时运行的脚本或脚本的目录。 /etc/passwd
2017-11-27 22:23:22
205
原创 VM安装linux
//VM安装linux选择创建新的虚拟机选择自定义硬件兼容选最高的选择稍后安装系统客户机操作系统选择 Linux(版本:Red Hat Enterprise Linux 7 64 位)总处理器核心数量2 -4随意(和电脑配置有关)虚拟机内存设置2Gb就差不多网络类型一般选仅主机(目的是为了模拟服务器方便,其实随便哪个都可以)磁盘选择创建新的虚拟磁盘将虚拟磁盘
2017-11-24 17:38:29
420
原创 基于https的web服务
//需要关闭SELinux 或者 将Enforcing改为 permissive 模式[root@localhost certs]# setenforce 0[root@localhost certs]# getenforcePermissive/*SSL建立过程三次握手 协商算法 服务器发送证书给客户端 客户端生成对称密钥 客户端发送http请求服务器
2017-11-19 19:09:35
509
原创 基于主机名的web服务
//模拟利用域名访问服务器//需要关闭SELinux 或者 将Enforcing改为 permissive 模式[root@localhost conf.d]# getenforce Enforcing[root@localhost conf.d]# setenforce 0[root@localhost conf.d]# getenforce Permissive
2017-11-19 01:37:55
653
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人