自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(25)
  • 资源 (3)
  • 收藏
  • 关注

原创 关于linux下的less和grep

:1.less 工具也是对文件或其它输出进行分页显示的工具,应该说是linux正统查看文件内容的工具     用less查看的内容有回车符(\r)和换行符(\n),所以如果查看的内容是json串,则会导致转换不了,需注意     命令格式: less [参数]  文件         命令参数:                -i  忽略搜索时的大小写         -m  显示类似more命令...

2018-02-28 16:14:43 3044

原创 more

more命令的翻页按键:空格:表示向下翻一页回车:表示向下滚动一行/字符串:表示查询字符串q:离开more界面而less命令和more的不同之处在于,它可以向上翻页,字符串查询也可以向上查询。less命令的按键(more命令的按键在less中一样):PageUp:向上翻页PageDown:和空格键一样是向下翻页?字符串:表示向下查询字符串n:重复查询字符串...

2018-02-28 15:52:23 347

转载 关于继承和组合的面向对象的理解

一、什么是继承?什么是组合1.所谓组合是指新类由现有类的对象合并而成,称这种构造类的方式为组合;2.所谓继承是指通过扩展已有类来获得新功能的代码重用方法。二、二者各自的优缺点1.组合 1)优点被包含对象通过包含他们的类来访问黑盒重用,因为被包含对象的内部细节是不可见的很好的封装每个类专注于一个任务通过获得和被包含对象的类型相同的对象引用,可以在运行时动态定义组合的方式 2)缺点结果系统可能会包含更...

2018-02-28 14:59:19 246

原创 oo原则 (摘自java编程思想)

是面向对象的基本原则:1、单一职责一个类应该最多只能有一个因素能够给导致其变化,类中的方法应该都是相关性很高的,即“高内聚”2、里氏替换      利用多态特性,父类作用的地方可以使用其任意子类替代,反之不行3、接口隔离      类不应该实现它不需要的接口,将臃肿、庞大的接口拆分为更小、更具体接口 从而为系统解耦,让程序容易重构、更改、部署4、迪米特原则一个类对需要耦合的另一个类应该知道的最少,...

2018-02-28 14:56:37 292

原创 算法13 使用o(1)的时间复杂度去删除一个节点

题目:给定单向链表的头指针和一个结点指针,定义一个函数在O(1)时间删除该结点。核心思想:正常删除单链表的一个结点,需要找到该结点的前一个结点,然后将前一个结点的next指针指向要删除结点的下一个结点即可。但此处要求O(1)的时间复杂度,可以把要删除的结点转换为当前结点的下一个结点,这样就相当于找到了被删除结点的前一个结点。转换的方法当然是把下一个结点的内容拷贝到当前结点上。这样删除下一个结点后,...

2018-02-28 14:14:25 258

原创 打印1到最大的n位数(java实现)

思路1:最简单的想法就是先找出最大的n位数,然后循环打印即可。public static void Print1ToMaxOfNDigits_1(int n){ int number = 1; int i = 0; while(i++ < n){ number *= 10; } //number-1是最大的n位数 for(int...

2018-02-27 17:53:42 606

转载 输入数字n,按顺序打印出1到最大的n位十进制数。比如输入3,则打印出1、2、3一直到最大的3位数即999。

    输入数字n,按顺序打印出1到最大的n位十进制数。比如输入3,则打印出1、2、3一直到最大的3位数即999。陷阱:考虑大数问题,就是输入的数字非常大的情况,如100,怎么表示100位的数呢,可以用字符串保存。 细节问题:1.字符串递增的溢出判断2.打印时过滤0 方法一:      使用字符串数组表示大数,最直观的方法是字符串里每个字符都是’0’到’9’之间的某一个字符,用来表示数字中的一位。...

2018-02-27 17:49:53 1005

转载 Linux下的vi编辑器详解

(一)vi/vim是什么?Linux世界几乎所有的配置文件都是以纯文本形式存在的,而在所有的Linux发行版系统上都有vi编辑器,因此利用简单的文字编辑软件就能够轻松地修改系统的各种配置了,非常方便。vi就是一种功能强大的文本编辑器,而vim则是高级版的vi,不但可以用不同颜色显示文字内容,还能进行诸如shell脚本、C语言程序编辑等功能,可以作为程序编辑器。(二)为什么要学习vi/vim?首先所...

2018-02-27 13:14:01 147

原创 求最长不重复子串

问题描述:给定一个字符串,找出这个字符串中最长的不重复子串。比如对于字符串“sadus”,那么返回的结果应该是“sadu”或者“adus”(返回一个即可);对于字符串“acbba”,返回的应是“acb”。       对于这样一个问题,想必大家首先想到利用的数据结构是HashMap,利用HashMap来保证子串的不重复。但是我们可以想想能不能不用HashMap呢?答案显然是可以的,因为字符数是固定...

2018-02-27 10:29:32 256

原创 tinyint(1)和int(1)的区别

问题:int(1) 和 tinyint(1) 有什么区别呢?像这样的设计,反正我是不会写int(1)的。 查了下,mysql中设置了储存类型后,储存是定长的,也就是说,int(1) 和 int(4) 在硬盘中所占的字节数都是一样的。我们知道,int类型占4个字节,tinyint占1个字节。int(1) 和 int(4) 从本身长度还是存储方式上都是一样的,区别就是显示的长度不同,但是要设置一个参数...

2018-02-26 18:34:05 29089 3

原创 git远程库代码版本回滚方法问题 关于远程代码回滚

最近使用git时, 造成了远程库代码需要回滚到之前版本的情况,为了解决这个问题查看了很多资料。问题产生原因: 提交了错误的版本到远程库。以下是解决的方法, 供大家参考:1.对本地代码库进行回滚git log 查看提交历史,找出要回滚到的commit-idgit reset --hard commit-id :回滚到commit-idgit reset --hard HEAD~3:将最近3次的提...

2018-02-26 17:36:21 585

转载 职业生涯建议 雷军2.0技术大会演讲稿 留下来慢慢感悟

  写在前面:此篇文章出自雷军之手,是他为软件开发2.0技术大会准备的演讲稿,但由于某些原因没有派上用场。这里跟大家分享下,对我们程序员来说还是大有裨益的。       每个IT企业,尤其是初创企业,非常苦恼:找不到好的程序员。现在大学、软件学院及各种培训机构,每年培养几十万的程序员,毕业的每个人都有同样困恼:找不到好的工作。问题出在哪里呢?其实,企业需要的是不是刚会写程序的人,需要来了就能干活的...

2018-02-24 14:35:05 255

转载 volatile以及如何让i++操作成为原子性

1、可见性(Visibility)        可见性是指,当一个线程修改了某一个全局共享变量的数值,其他线程是否能够知道这个修改。        显然,在串行程序来说可见性的问题是不存在的。因为你在任何一个地方操作修改了某个变量,那么在后续的程序里面,读取这个变量的数值,一定是修改后的数值。        但是,这个问题在并行程序里面就不见得了。在并行程序里面,如果一个线程修改了某一个全局变量...

2018-02-23 17:20:30 556

转载 ConcurrentHashMap详解

HashMap就不介绍了,具体请查看JDK7与JDK8中HashMap的实现HashTable是一个线程安全的类,它使用synchronized来锁住整张Hash表来实现线程安全,即每次锁住整张表让线程独占。ConcurrentHashMap允许多个修改操作并发进行,其关键在于使用了锁分离技术。它使用了多个锁来控制对hash表的不同部分进行的修改。ConcurrentHashMap内部使用段(Se...

2018-02-23 16:59:18 364

原创 java基础之final详解

/*  * 问题:使用final关键字修饰一个变量时,是引用不能变,还是引用的对象不能变  * 答:  * 使用final关键字修饰一个变量时,是指引用变量不能变,引用变量所指向的对象中的内容还是可以改变的。  */  public class Test10 {      // final修饰基本类型的变量      public static final char CHAR = '中';    ...

2018-02-23 11:01:10 127

转载 动态绑定和静态绑定

一:绑定        把一个方法与其所在的类/对象 关联起来叫做方法的绑定。绑定分为静态绑定(前期绑定)和动态绑定(后期绑定)。       二:静态绑定        静态绑定(前期绑定)是指:在程序运行前就已经知道方法是属于那个类的,在编译的时候就可以连接到类的中,定位到这个方法。        在Java中,final、private、static修

2018-02-07 15:45:35 256

转载 HashMap详解一

1.    HashMap概述:   HashMap是基于哈希表的Map接口的非同步实现。此实现提供所有可选的映射操作,并允许使用null值和null键。此类不保证映射的顺序,特别是它不保证该顺序恒久不变。 2.    HashMap的数据结构:   在java编程语言中,最基本的结构就是两种,一个是数组,另外一个是模拟指针(引用),所有的数据结构都可以用这两个基本

2018-02-05 18:57:42 128

转载 java源码分析ArrayList

目录:      一、 ArrayList概述      二、 ArrayList的实现                  1) 私有属性                 2) 构造方法                 3) 元素存储                 4) 元素读取                 5) 元素删除     

2018-02-05 17:00:16 148

原创 (面向对象一)关于继承和组合的区别

要实现的目标:鸟(Bird)和狼(Wolf)都是动物(Animal),动物都有心跳(beat()),会呼吸(beat()),但是鸟会fly(fly()),狼会奔跑(run()),用java程序实现以上描述。InheritTest.java 使用继承方式实现目标CompositeTest.java 使用组合方式实现目标[java] view plain cop

2018-02-05 16:57:15 243

转载 线程池详解三 四种线程池使用实例

本文为大家分析四种Java线程池用法,供大家参考,具体内容如下http://www.jb51.net/article/81843.htm1、new Thread的弊端执行一个异步任务你还只是如下new Thread吗?12345678new Thread(new 

2018-02-02 16:55:41 488

原创 scheduleAtFixedRate 与 scheduleWithFixedDelay 的区别

public class Test03 {        private static final AtomicLong l = new AtomicLong(0) ;        private static final ScheduledExecutorService scheduler =           Executors.newScheduledThreadPo

2018-02-02 16:40:05 403

转载 JAVA线程池原理详解二

Executor框架的两级调度模型在HotSpot VM的模型中,JAVA线程被一对一映射为本地操作系统线程。JAVA线程启动时会创建一个本地操作系统线程,当JAVA线程终止时,对应的操作系统线程也被销毁回收,而操作系统会调度所有线程并将它们分配给可用的CPU。在上层,JAVA程序会将应用分解为多个任务,然后使用应用级的调度器(Executor)将这些任务映射成固定数量的线程;在底层,操作

2018-02-01 18:07:07 139

原创 线程池原理详解一

线程池的优点1、线程是稀缺资源,使用线程池可以减少创建和销毁线程的次数,每个工作线程都可以重复使用。2、可以根据系统的承受能力,调整线程池中工作线程的数量,防止因为消耗过多内存导致服务器崩溃。线程池的创建1 public ThreadPoolExecutor(int corePoolSize,2 int maxi

2018-02-01 18:04:58 145

原创 http1.0 http1.1详解

1、HTTP 1.1支持长连接(PersistentConnection)和请求的流水线(Pipelining)处理HTTP 1.0规定浏览器与服务器只保持短暂的连接,浏览器的每次请求都需要与服务器建立一个TCP连接,服务器完成请求处理后立即断开TCP连接,服务器不跟踪每个客户也不记录过去的请求。HTTP 1.1则支持持久连接Persistent Connection, 并且默认使

2018-02-01 15:13:47 961

原创 关于linux下测试一个端口是否通

最初想到的是ping  ① ping + ip: 查看某一个ip地址是否能够连通,如: ping 114.80.67.193  但是不能看端口后来查询资料发现 ② telnet ip port : 查看某一个机器上的某一个端口是否可以访问,如:telnet 114.80.67.193 8080 才可以查看当前服务下的端口是否接通③ 退出命令: exit---退出dos窗口,q!

2018-02-01 15:07:41 13700

zookeeper详解

Apache zookeeper 深入浅出

2018-02-01

jmeter使用说明

jmeter使用说明 主要是对jemet进行压测时候回急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急

2018-01-22

阿里巴巴代码规范文件

阿里巴巴代码规范水水水水是是是是是是是是是是是是是是是是是是是

2018-01-04

空空如也

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

TA关注的人

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