自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

kevin的博客

知其然,后知其所以然

  • 博客(60)
  • 资源 (1)
  • 收藏
  • 关注

翻译 ØMQ中文翻译文档

英语原文链接翻译文档已上传到本人GitHub,目前只翻译了一部分,很多都是直译(英语一般==),欢迎一起来翻译~如果您需要转载,请注明出处。ØMQ - The Guide[Table of Contents](javascript:

2019-08-26 13:48:14 10543

转载 2020-09-21

原文地址:https://blog.csdn.net/iechenyb/article/details/79424974新生代分为三个区域,一个Eden区和两个Survivor区,它们之间的比例为(8:1:1),这个比例也是可以修改的。通常情况下,对象主要分配在新生代的Eden区上,少数情况下也可能会直接分配在老年代中。Java虚拟机每次使用新生代中的Eden和其中一块Survivor(From...

2020-09-21 16:57:24 189

原创 自己动手编译OpenJDK1.8

自己动手编译OpenJDK1.8前言相信看过《深入理解Java虚拟机》的小伙伴都尝试过自己动手编译OpenJDK,有没有成功呢?评论告诉我。纵观网上那么多教程,不客气的说,要么讲的太简单要么不能用,今天,在踩了无数坑之后成功编译完成的我,为了不让后来者继续踩坑,所以决定写这篇博文。废话不多说,亮图:想想自己到底在哪个坑????我把编译JDK的坑分为这几个阶段安装linux,配置环境工具如yum、ssh下载OpenJDK,获取完整OpenJDK资源(解压后500M左右)准备编译所需工具编译

2020-09-09 10:50:35 1494 11

原创 CheckStyle 编写自己的代码检查插件

CheckStyle 编写自己的代码检查插件 checkstyle是用来检查Java代码很好用的工具,Maven中可以添加插件maven-checkstyle-plugin来使用checkstyle,官方默认给了两个检查配置文件 :sun、google。本篇重点介绍 如何自定义检查文件来编写自定义的代码检查逻辑。重点网站checkStyle配置项介绍网站:https://checkstyle.org/index.html 在这个网站中 每一项配置及其作用和参数都有介绍,想自定义代码检查插件,这个必

2020-07-20 14:53:38 901

原创 java泛型-看这一篇就够了

java泛型-看这一篇就够了泛型,JDK1.5添加的特性,这都0202年了,还没整明白?今天我们就来再回顾下,本篇主要介绍以下几个方面:泛型接口、泛型类、泛型方法的定义。泛型擦除和泛型检测泛型擦除和多态的冲突希望能给你带来一点点帮助或者欢乐~一、定义泛型接口public interface GenericInterface<T>{ public T get(T t);}泛型类public class GenericClass<T>{

2020-06-03 15:29:20 304

原创 Double、Integer、Long对象的值传递问题

Double、Integer、Long和一般对象的不同之处我们知道对于Java来说:函数的参数 对参数为基本类型来说, 参数是一个局部变量且值是原来值的一份拷贝;对函数的参数为对象来说,参数是一个局部变量对象且值是原来对象的地址的一份拷贝。那么我们就可以得出所有人都知道的结论:传递给函数的基本类型的值即使函数对其做了处理也不会影响原来的值。那我非要影响而又非要不使用全局变量、自定义对象封装、数组、容器这些怎么办,我就是欠欠的怎么办?可能自然而然的想对于基本类型double来说 不行。Double是个对

2020-05-27 17:26:35 1726

原创 Java8函数式接口-帮你梳理知识脉络

前言本篇适用于使用过Java8函数式接口或者学习函数式接口的朋友(脉络认知),Java8 真香????函数式接口分类及细分图消费型:Consumer供给型:Supplier断言型:Predicate函数型:Function操作型:operator函数式接口代码实现代码地址:Java8FunctionalInterfaceAPI.java,内容介绍????‍????:消费型接口Consumer:消费型接口Consumer中抽象方法为:accept() // 接收一个参数消费

2020-05-26 11:44:02 349

原创 Java Stream流-看这一篇就够了

一、前提什么是流?在用JDK1.8的你肯定知道我就不多bb了。本篇主要介绍一下内容:流的创建流的操作流的结束听上去是不是很弟弟,别急,看完这篇,让你用流信手拈来。????二、流基本介绍什么是流JDK8提供的对集合数据进行处理的一种方式流中的元素是特定类型的对象,形成一个队列。 Java中的Stream并不会存储元素,而是按需计算数据源流的来源。 可以是集合,数组,I/O channel, 产生器generator 等有聚合操作 类似SQL语句一样的操作, 比如filter, ma

2020-05-20 10:05:44 2534 4

原创 C程序设计语言第八章 UNIX系统接口

第八章 UNIX系统接口文件描述符在UNIX操作系统中,所有的外围设备(包括键盘和显示器)都被看作是文件系统中的文件,因此,所有的输入/输出都要通过读文件或写文件完成。也就是说,通过一个单一的接口就可以处理外围设备和程序之间的所有通信。打开文件使用 prog <输入文件名>输出文件名 重定向IO当命令解释程序( 即" shell") 运行一一个程序的时候,它将打开3个文件,对应的文件描述符分别为0,1, 2,依次表示标准输入,标准输出和标准错误。如果程序从文件0中读,

2020-05-14 16:15:52 318

原创 C程序设计语言学习第七章 输入与输出

第七章 输入与输出格式化输出printf函数转换说明每个转换说明都由一个百分号%开始以一个转换字符结束在%和转换字符之间包含下列组成部分●负号,用于指定被转换的参数按照左对齐的形式输出。●数,用于指定最小字段宽度。转换后的参数将打印不小于最小字段宽度的字段。如果有必要,字段左边(如果使用左对齐的方式,则为右边)多余的字符位置用空格填充以保证最小字段宽。●小数点,用于将字段宽度和精度分开。●数,用于指定精度,即指定字符串中要打印的最大字符数、浮点数小数点后的位数、整型最少输出的数字数目。

2020-05-14 16:14:11 330

原创 C程序设计语言学习第六章 结构

第六章 结构声明一个结构struct point {int x;int y;};关键字struct引入结构声明。结构声明由包含在花括号内的一系列声明组成。关键字struct后面的名字是可选的,称为结构标记(这里是point)。结构标记用于为结构命名,在定义之后,结构标记就代表花括号内的声明,可以用它作为该声明的简写形式。不带变量表声明一个结构(不需要分配存储空间)struct...

2020-05-08 16:26:20 340

原创 C程序设计语言学习第五章:指针与数组

第五章:指针与数组定义指针是保存变量地址的变量通用指针类型void*初始化初始值只能是0或者表示地址的表达式,对于后者必须是在此前已经定义的具有适当类型的数据的地址注意指针与整数之间不能相互转换,但是0是唯一的的例外:常量0可以赋值给指针,指针也可以和常量0进行比较,程序中经常使用符号常量NULL代替常量0,这样便于更清晰地说明常量0是一个特殊值(NULL定义在std...

2020-05-08 16:25:16 326

原创 C程序设计语言学习第四章:函数与程序结构

第四章:函数与程序结构作用域规则外部变量的声明必须指定数组长度,而extern声明使用外部变量却不用指定 数组长度静态变量介绍: 被static修饰的变量或函数为静态变量或静态函数特点: 静态变量或者函数只能被本文件访问,外部不可以访问寄存器变量使用register声明变量特点:思想是将使用频率高的变量放到寄存器中,从而使程序更小,运行速度更快注意事...

2020-05-08 16:23:16 286

原创 Java异常那些事

Java异常的那些事一、 前言在日常的Java编码工作学习中,我们总免不了和异常打交道,比如说新手常见的简称NPE的空指针异常、类型转换异常;读写文件数据库常见的IO异常、SQL异常;还有不是很常见但是总有一天你把程序搞崩遇到的栈溢出异常、内存溢出异常。今天我们就来详谈下Java异常的二三事。下面是Jdk1.8中的异常类图:二、 万物(异常)始于ThrowableThrowable是所...

2020-04-20 20:59:41 222

转载 练习2-6 编写一个函数setbits(x, p ,n, y),该函数返回对x执行下列操作后的结果值: 将x中从第p位开始的n个(二进制)位设置为y中最右边n位的值,x的其余各位保持不变。

转载于练习2-6 编写一个函数setbits(x, p ,n, y),该函数返回对x执行下列操作后的结果值: 将x中从第p位开始的n个(二进制)位设置为y中最右边n位的值,x的其余各位保持不变。参考代码如下:#include<stdio.h> unsigned setbits(unsigned x, int p, int n, unsigned y){ return ...

2020-04-17 11:07:04 1197 2

原创 C程序设计语言学习第二章:类型、运算符与表达式

第二章:类型、运算符与表达式数据类型及长度char:字符型,占用一个字节,可以存放本地字符集中的一个字符; char类型就是最小的整型int:整形,通常反映了所用机器中整数的最自然长度;在32位机器上int为16位,在64位机器上,int为32位short int: 短整型;short类型通常为16位。long int:长整型;long类型通常为32位。float:单精...

2020-04-14 16:38:19 388

原创 达梦Dca认证学习(2)- 备份还原

1.为什么需要备份还原防止误操作。软硬件故障,做恢复。防止天灾。备份的方式:物理备份和逻辑备份备份的介质:磁盘,磁带,光盘集群:数据守护 ,dsc(rac)也支持第三方的备份软件:上海爱数,鼎甲2.物理备份2.1冷备DMAP服务是打开的,数据库实例是关闭的),要停止数据库,如果不停止造成数据丢失。方式:2.1.1 利用控制台工具2.1.2 DMRMAN工具备份:...

2020-04-13 15:47:04 805

原创 达梦数据库学习-表的管理

一、前言表是数据库中数据存储的基本单元,是对用户数据进行读和操纵的逻辑实体。表由列和行组成,每一行代表一个单独的记录。表中包含一组固定的列,表中的列描述该表所跟踪的实体的属性,每个列都有一个名字及各自的特性。列的特性由两部分组成:数据类型(dataType)和长度(length)。对于 NUMERIC、DECIMAL 以及那些包含秒的时间间隔类型来说,可以指定列的小数位及精度特性。在 DM 系...

2020-04-13 14:52:42 513

原创 达梦数据库学习-管理模式对象的空间

一、前言模式是所有对象的集合(表、视图、索引,序列,同义词,自增列),DM在创建用户的时候,会默认的创建一个同名的模式。模式对象的空间管理关系到空间的有效使用和数据的合理分布二、支持的表类型索引组织表(默认)堆表临时表分区表外部表对于普通表和索引,DM7 提供了以下的存储参数:初始簇数目 INITIAL:指建立表时分配的簇个数,必须为整数,最小值为 1,最大值为 256,缺...

2020-04-13 14:28:44 486

原创 达梦数据库学习-DM基础数据库管理

一、前言在现实生活中,任何一个系统如果将所有的权利都赋予给某一个人,而不加以监督和控制,势必会产生权利滥用的风险。从数据库安全角度出发,一个大型的数据库系统有必要将数据库系统的权限分配给不同的角色来管理,并且各自偏重于不同的工作职责,使之能够互相限制和监督,从而有效保证系统的整体安全。DM 数据库实现了 B1 级安全特性。“三权分立”的安全机制,将系统管理员分数据库管理员、数据库安全员和数据库...

2020-04-13 14:01:18 747

原创 达梦Dca认证学习(1)-安装数据库并创建数据库实例

1 安装数据库1.1 查看glibc版本 须高于1.14 rpm -aq|grep glibc1.2 建立安装目录 mkdir /dm71.3 创建用户dmdbagroupadd dinstalluseradd -g dinstall dmdbapasswd dmdbachown -R dmdba:dinstall /dm7 ll1.4 配置环境变量cd /home/...

2020-04-12 15:56:22 1076

转载 Tmux常用快捷键

tmux常用命令  Ctrl+b激活控制台;此时以下按键生效系统操作?列出所有快捷键;按q返回d脱离当前会话;这样可以暂时返回Shell界面,输入tmux attach能够重新进入之前的会话D选择要脱离的会话;在同时开启了多个会话时使用Ctrl+z挂起当前会话...

2020-03-31 10:51:36 2023

原创 设计模式-装饰模式

介绍动态地给一个对象添加一些额外的职责。 就增加功能来说,装饰模式相比生成子类更为灵活。类图装饰模式的优点装饰类和被装饰类可以独立发展,而不会相互耦合。换句话说,Component类无须知道Decorator类,Decorator类是从外部来扩展Component类的功能,而Decorator也不用知道具 体的构件。装饰模式是继承关系的一个替代方案。我们看装饰类Decorator,不...

2019-12-26 17:02:01 143

原创 自定义异常类是继承Execption异常还是继承RuntimeExecption异常?

1.继承Execption异常还是继承RuntimeExecption的区别想分辨这两种的区别,首先要介绍可检查异常和不可检查异常,何为可检查何不不可检查?可以参考博客Throwable、Exception、Error分析可检查的异常(checked Execption):可检查异常必须在代码中显式的捕获,这是编译期工作的一部分,不然无法通过编译。不可检查异常:不可检查即意味着编译期检测不...

2019-12-18 11:47:14 5043

原创 设计模式-建造者模式

由于标准版的建造者模式我目前还没用过(或者见过我没认出来==),这里只说一种特殊的建造者模式,它适用于当一个类构造器需要传入很多参数时,如果使用构造函数创建这个类的实例,代码可读性会非常差,而且很容易引入错误,此时就可以利用 builder模式 :public class Person{ private String eyes; private String nose;...

2019-12-18 10:02:24 123

原创 设计模式-模板方法模式

模板方法模式介绍定义一个操作中的算法的框架,而将一些步骤延迟到子类中。使得子类可以不改 变一个算法的结构即可重定义该算法的某些特定步骤。通用类图如下所示:模板方法模式确实非常简单,仅仅使用了Java的继承机制,但它是一个应用非常广泛的 模式。其中,AbstractClass叫做抽象模板,它的方法分为两类:基本方法: 基本方法也叫做基本操作,是由子类实现的方法,并且在模板方法被调用。模板方...

2019-12-17 15:47:32 503

原创 设计模式-工厂方法模式

工厂方法模式定义定义一个用于创建对象的接口,让子类决定实例化哪一个类。工厂方法使一个类的实例化延迟到其子类。工厂方法模式模板代码AbstractFactorypublic abstract class AbstractFactory{ public abstract <T extends Product> T createProduct(Class<T> ...

2019-12-17 10:38:59 92

原创 设计模式-单例模式

定义确保某一个类只有一个实例,而且自行实例化向整个系统提供这个实例。单例模式的使用场景在一个系统中,要求一个类有且仅有一个对象,如果出现多个对象就会出现“不良反 应”,可以采用单例模式,具体的场景如下:要求生成唯一序列号的环境;在整个项目中需要一个共享访问点或共享数据,例如一个Web页面上的计数器,可以 不用把每次刷新都记录到数据库中,使用单例模式保持计数器的值,并确保是线程安全的;...

2019-12-16 15:47:34 89

原创 设计模式-6大设计原则

Single Responsibility Principle:单一职责原则Open Closed Principle:开闭原则Liskov Substitution Principle:里氏替换原则Law of Demeter:迪米特法则Interface Segregation Principle:接口隔离原则Dependence Inversion Principle:依赖倒置原...

2019-12-16 14:21:51 146

原创 Java容器类源码学习-Hashtable(十一)

一、介绍最近变的不太愿意翻译官方介绍了,看过源码的都懂,除了特性介绍,剩下的每个容器类都基本一致。所以这里就说下既然都有的HashMap了,为啥还要来个Hashtable?我也不晓得,哈哈。说说区别吧:HashMap线程不安全,Hashtable线程安全(方法带锁 synchronized)。底层实现还是不一样的,但是用起来,Hashtable有HashMap的感觉,当遇到key值的ha...

2019-12-04 14:55:26 141

原创 如何正确停止线程?

背景jdk1.2以前我们使用stop()停止一个线程,但是由于stop强制性的立即释放所有资源,非常不安全,1.2后这个方法已经不推荐使用,而后新加入interrupte()方法interrupte()方法的使用interrupte()方法会将线程的中断标志设置为true,但是这并不会让线程停止,它会继续正常执行,想让线程停止,我们需要在线程的run方法中加入对中断标志的检验,自行进行中断处...

2019-11-29 11:45:52 163

原创 Java容器类源码学习-TreeMap(十)

官方介绍一个基于红黑树的NavigableMap实现。Map根据其key的自然顺序进行排序,或者根据使用的构造函数由创建map时提供的比较器进行排序。这个实现为containsKey、get、put和remove操作提供了保证的log(n)时间成本。算法是对Cormen, Leiserson和Rivest介绍的算法的改编。...

2019-11-28 14:59:27 109

原创 Java编程杂谈-多线程篇

本文章记录学习多线程一路走过的点点滴滴,解法一定不是最好的,但一定是那是我觉得很棒的。1.创建线程,并命名//命名方式1 new Thread(() -> { while (true) { System.out.println("我是" + Thread.currentThread().ge...

2019-11-28 14:17:31 135

原创 Java编程杂谈-容器篇

本篇文章主要记录日常工作中的编程经验,一定不是最好,但一定是当前我知道的较好的方法,持续更新容器类操作1.Object类型List转数组 List<Integer> list = new ArrayList<>(); list.add(1); list.add(2); Integer[] arr1 = list.toArray(new Integer[list....

2019-11-28 13:30:10 140

原创 为什么说只有一种实现线程的方法?

六种创建线程的方法实现Runable接口实现run方法继承Thread类重新run方法使用Callable和FutureTask创建线程使用线程池创建线程定时器Timer创建线程Spring创建线程一、Thread和Runble创建线程的区别和联系使用Thread方式,我们需要继承Thread类重写run方法,然后调用start方法;使用实现Runable接口的方式,我们需要先...

2019-11-18 10:32:06 246

原创 Java容器类源码学习-HashMap(九)

一、官方介绍基于Hash table实现的Map接口。此实现提供所有可选的Map操作,并允许空值和空键。(HashMap类大致相当于Hashtable,只是它是不同步的,并且允许为空。)该类不保证Map的顺序;特别是,它不能保证顺序在一段时间内保持不变。这个实现为基本操作(get和put)提供了稳定的时间性能,假设 hash函数将元素适当地分散到各个bucket中。集合视图的迭代需要与Has...

2019-11-13 14:56:16 201

转载 原码, 反码, 补码 详解

原码, 反码, 补码 详解作者:张子秋出处:http://www.cnblogs.com/zhangziqiu/本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。 本篇文章讲解了计算机的原码, 反码和补码. ...

2019-11-12 15:51:52 224

原创 Throwable、Exception、Error分析

一、Exception和Error的异同Error和Exception都继承了Throwable类,而只有继承了Throwable类的才能抛出或者捕获异常。Exception是java程序运行中可以预料的意外情况,可以并且应该被捕获。Error指正常情况不可能出现的错误,一旦出现,程序将进入不正常,不可恢复状态,且无法被捕获。常见的如:栈移除,内存溢出,线程死亡等。二、Execptio...

2019-11-05 16:13:16 782

原创 Java容器类源码学习-Map(八)

一、官方介绍将键映射到值的对象。Map不能包含重复的键;每个键最多可以映射到一个值。这个接口代替了Dictionary类,Dictionary类是一个完全抽象的类,而不是接口。Map接口提供了三个集合视图,它们允许将映射的内容视为一组键、值的集合或一组键-值映射。映射的顺序定义为映射集合视图上的迭代器返回其元素的顺序。一些映射实现,比如TreeMap类,对它们的顺序做了特定的保证;而其他类...

2019-11-05 15:01:45 171

原创 Java容器类源码学习-TreeSet(七)

一、官方介绍基于TreeMap的NavigableSet实现。元素使用它们的自然顺序排序,或者通过在设置创建时提供的比较器进行排序,这取决于使用的是哪个构造函数。这个实现为基本操作(添加、删除和包含)提供了保证的log(n)时间开销。...

2019-11-04 16:06:49 165

YourOpenJDK.zip|YourOpenJDK.zip

用于编译的JDK8源码完整版,不需要执行get_source.sh,编译过程参考我的博客,有问题可以讨论

2020-09-09

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除