Java
harris135
这个作者很懒,什么都没留下…
展开
-
Linux centos7 安装maven3.5.2
JDK:jdk-8u111-linux-x64.rpm Linux : Centos 7 Maven: apache-maven-3.5.2-bin.tar.gz1.下载 linux maven 安装包 在根目录下创建目录 mkdir cloud mkdir /cloud/maven将下载好了的maven放到该目录下, tar vxf apache-maven-3.5.2-bin.tar.原创 2017-11-04 12:38:29 · 1460 阅读 · 0 评论 -
【深入理解JVM】:Java内存模型JMM
转至:http://blog.csdn.net/u011080472/article/details/51337422多任务和高并发的内存交互多任务和高并发是衡量一台计算机处理器的能力重要指标之一。一般衡量一个服务器性能的高低好坏,使用每秒事务处理数(Transactions Per Second,TPS)这个指标比较能说明问题,它代表着一秒内服务器平均能响应的请求数,而TPS值与转载 2017-12-11 10:12:50 · 177 阅读 · 0 评论 -
全排序-递归算法
全排序-递归算法public class Permutation { /* * */ public static void main(String[] args) { int array[] = new int[5]; for(int i=0;i<5;i++) { array[i] = i+1;原创 2017-12-20 10:30:40 · 482 阅读 · 0 评论 -
排序
1.冒泡排序public class BubbleSort { /** * * @Title: sortUp * @Description: 从前往后冒泡 * @param arr */ public static void sortUp(int arr[]) { int temp = 0;原创 2017-12-13 15:34:00 · 209 阅读 · 0 评论 -
链表
1.链表public class Node { public int data; public Node next; public Node() { } public Node(int data) { this.data = data; } public void display() { System.out.print原创 2017-12-13 15:38:01 · 191 阅读 · 0 评论 -
递归
public class Recursion { /** * @Title: main * @Description: TODO * @param args */ public static void main(String[] args) { //test(); System.out.printl原创 2017-12-13 15:39:50 · 174 阅读 · 0 评论 -
汉诺塔用递归算法
汉诺塔问题是使用递归解决问题的经典范例。 汉诺(Hanoi)塔问题:古代有一个梵塔,塔内有三个座A、B、C,A座上有64个盘子,盘子大小不等,大的在下,小的在上(如图)。有一个和尚想把这64个盘子从A座移到B座,但每次只能允许移动一个盘子,并且在移动过程中,3个座上的盘子始终保持大盘在下,小盘在上。在移动过程中可以利用B座,要求打印移动的步骤。如果只有一个盘子,则不需要利用B座,直接将盘子从A移动原创 2017-12-13 15:42:57 · 319 阅读 · 0 评论 -
volatile和synchronized的区别
volatile和synchronized特点首先需要理解线程安全的两个方面:执行控制和内存可见。执行控制的目的是控制代码执行(顺序)及是否可以并发执行。内存可见控制的是线程执行结果在内存中对其它线程的可见性。根据Java内存模型的实现,线程在具体执行时,会先拷贝主存数据到线程本地(CPU缓存),操作完成后再把结果从线程本地刷到主存。synchronized关键字解转载 2018-01-31 10:08:29 · 170 阅读 · 0 评论 -
Linux centos7 安装 jdk1.8
JDK:jdk-8u111-linux-x64.rpm linux : Centos 71.下载linux jdk,本人用的jdk是jdk-8u111-linux-x64.rpm 先在/目录下创建 cloud/java ,将jdk复到该目录下,可以用putty或SecureCRTPortable上传,输入rz上传就可以了,这里不做多讲述。 2.卸载centos7已安装的openjdk,原创 2017-11-04 12:08:49 · 635 阅读 · 0 评论 -
卸载CentOS7-x64自带的OpenJDK并安装Sun的JDK8的方法
CentOS7.0默认自带OpenJDK,在安装Sun公司的JDK时,要先卸载自带的JDK,不然系统会不知道到底用哪个JDK而导致错误。 首先可以通过java -version查看系统自带的JDK: java version “1.7.0” OpenJDK Runtime Environment (build 1.7.0-b09) OpenJDK 64-Bit Server VM (buil转载 2017-10-31 16:05:19 · 352 阅读 · 0 评论 -
Java中遍历Map对象的几种方法
Map<String,String> map = new HashMap<String,String>();for(Map.Entry<String, String> str:map.entrySet()) { System.out.println(str.getValue() + " "+ str.getKey()); }for(String key:map.keySet()) {原创 2017-10-10 09:41:17 · 311 阅读 · 0 评论 -
Java的泛型封装方式
Java的泛型封装方式package base;import java.util.List;public interface DaoSupport<T> { /** * 保存实体 * * @param entity */ void save(T entity); /** * 删除实体 * * @param原创 2017-03-14 17:37:01 · 2435 阅读 · 0 评论 -
JVM内存状况查看方法和分析工具
2.jvisualvm jvisualvm是一个Java虚拟机监控和分析工具,该工具提供了一个图形界面窗口,并且可以直观的了解Java应用程序的运行时信息。jvisualvm集成了许多工具,比如像jmp、jinfo、jstat、jstack、JConsole等。自从JDK 6 Update 7以后已经作为JDK的一部分。## JVM内存状况查看方法和分析工具 ##1.jinfo可以输出并修改运行时转载 2017-06-26 09:26:05 · 486 阅读 · 0 评论 -
JAVA中类的加载过程
JAVA中类的加载过程**类的生命周期: 加载 loading 验证 verification 准备 preparation 解析 resolution 初始化 initialization 使用 using 卸载 unloading**有且只有以下四种情况必须立即对类进行”初始化”(称为对一个类进行主动引用):遇到new、getstatic、putstat转载 2017-07-20 09:20:55 · 306 阅读 · 0 评论 -
轻松学JVM(一)——基本原理
转至:轻松学JVM(一)-- 基本原理前言 JVM一直是java知识里面进阶阶段的重要部分,如果希望在java领域研究的更深入,则JVM则是如论如何也避开不了的话题,本系列试图通过简洁易读的方式,讲解JVM必要的知识点。运行流程 我们都知道java一直宣传的口号是:一次编译,到处运行。那么它如何实现的呢?我们看下图: java转载 2017-08-14 14:16:02 · 776 阅读 · 0 评论 -
轻松学JVM(二)——内存模型、可见性、指令重排序
转至 轻松学JVM(二)——内存模型、可见性、指令重排序 上一篇我们介绍了JVM的基本运行流程以及内存结构,对JVM有了初步的认识,这篇文章我们将根据JVM的内存模型探索java当中变量的可见性以及不同的java指令在并发时可能发生的指令重排序的情况。内存模型 首先我们思考一下一个java线程要向另外一个线程进行通信,应该怎么做,我们再把需求明确一点,一转载 2017-08-14 14:25:18 · 270 阅读 · 0 评论 -
Java高级软件工程师面试考纲
Java高级软件工程师面试考纲如果要应聘高级开发工程师职务,仅仅懂得Java的基础知识是远远不够的,还必须懂得常用数据结构、算法、网络、操作系统等知识。因此本文不会讲解具体的技术,笔者综合自己应聘各大公司的经历,整理了一份大公司对Java高级开发工程师职位的考核纲要,希望可以帮助到需要的人。当前,市面上有《Java XX宝典》类似的图书,而且图书中的内容都着重在讲解Java转载 2017-08-14 15:02:52 · 265 阅读 · 0 评论 -
JVM笔记——技术点汇总
JVM笔记——技术点汇总 转至:http://www.cnblogs.com/netoxi/p/7291417.html目录· 初步认识 · Java里程碑(关键部分) · 理解虚拟机 · Java虚拟机种类 · Java语言规范 · Java虚拟机规范· 基本结构 · Java堆(Heap) · Java栈转载 2017-08-14 15:21:58 · 564 阅读 · 0 评论 -
Java 开发必须掌握的线上问题排查命令
作为一个合格的开发人员,不仅要能写得一手还代码,还有一项很重要的技能就是排查问题。这里提到的排查问题不仅仅是在coding的过程中debug等,还包括的就是线上问题的排查。由于在生产环境中,一般没办法debug(其实有些问题,debug也白扯。。。),所以我们需要借助一些常用命令来查看运行时的具体情况,这些运行时信息包括但不限于运行日志、异常堆栈、堆使用情况、GC情况、JVM参数情况、线程情况等。转载 2017-08-22 15:13:14 · 402 阅读 · 0 评论 -
Java注解基本原理
Java注解基本原理注解目前非常的流行,很多主流框架都支持注解,而且自己编写代码的时候也会尽量的去用注解,一时方便,而是代码更加简洁。 注解的语法比较简单,除了@符号的使用之外,它基本与Java固有语法一致。Java SE5内置了三种标准注解: @Override,表示当前的方法定义将覆盖超类中的方法。 @Deprecated,使用了注解为它转载 2017-09-14 14:57:09 · 232 阅读 · 0 评论 -
35 个 Java 代码性能优化总结
前言代码优化,一个很重要的课题。可能有些人觉得没用,一些细小的地方有什么好修改的,改与不改对于代码的运行效率有什么影响呢?这个问题我是这么考虑的,就像大海里面的鲸鱼一样,它吃一条小虾米有用吗?没用,但是,吃的小虾米一多之后,鲸鱼就被喂饱了。代码优化也是一样,如果项目着眼于尽快无BUG上线,那么此时可以抓大放小,代码的细节可以不精打细磨;但是如果有足够的时间开发、维护代码,这时候就必须考虑每个可转载 2017-09-28 16:59:17 · 348 阅读 · 0 评论 -
大数据集群搭建--2 - centos7.4安装jdk1.7
centos7.4安装jdk1.7=====================1. JDK版本 jdk版本为:jdk-7u80-linux-x64.tar.gz2. 解压jdk包 tar -zxvf jdk-7u80-linux-x64.tar.gz -C /usr/local/ys/app3. 添加环境变量 #java path export JAVA_HOME=...原创 2018-06-05 13:17:41 · 311 阅读 · 0 评论