欢迎您光临本小站。希望您在这里可以找到自己想要的信息。。。

 分类:java

IntelliJ IDEA 插件推荐

IntelliJ IDEA 插件推荐
人不要等明天,因为没有人知道自己有没有明天。 推荐插件 本篇博客整理自IntelliJ IDEA 简体中文专题教程和日常开发归档: IntelliJ IDEA 简体中文专题教程 插件名称 插件介绍 官网地址 IDE Features Trainer I...

water 2年前 (2017-09-01) 1304℃ 0评论 0喜欢

接口和抽象类有什么区别

接口和抽象类有什么区别
接口和抽象类有什么区别 你选择使用接口和抽象类的依据是什么? 接口和抽象类的概念不一样。接口是对动作的抽象,抽象类是对根源的抽象。 抽象类表示的是,这个对象是什么。接口表示的是,这个对象能做什么。比如,男人,女人,这两个类(如果是类的话……),他们的抽象类是人。说明,他们都是人。...

water 2年前 (2017-07-17) 482℃ 0评论 0喜欢

Java中HashMap和TreeMap的区别深入理解

Java中HashMap和TreeMap的区别深入理解
首先介绍一下什么是Map。在数组中我们是通过数组下标来对其内容索引的,而在Map中我们通过对象来对对象进行索引,用来索引的对象叫做key,其对应的对象叫做value。这就是我们平时说的键值对。   HashMap通过hashcode对其内容进行快速查找,而 TreeMap中所有的...

water 2年前 (2017-07-14) 652℃ 0评论 1喜欢

Java接口深入分析

Java接口深入分析
抽象类中包含普通方法和抽象方法,如果把抽象类进行更彻底的抽象,即所有的方法都是抽象方法,那就是另外一个机制 —— 接口。接口和类很相似,但接口不是类,它不像抽象类属于一种特殊的类。在常量、变量与运算符(一) 这篇文章里对引用数据类型分类过,接口属于引用数据类型的一种,...

water 2年前 (2017-05-05) 627℃ 0评论 0喜欢

在Java路上,我看过的一些书、源码和框架

在Java路上,我看过的一些书、源码和框架
都是干货(java进阶干货):http://www.jianshu.com/nb/4893857 收藏了 简书 占小狼转载请注明原创出处,谢谢!如果读完觉得有收获的话,欢迎点赞加关注 物有本末,事有终始,知所先后,则近道矣 面试经历 关于Java面试,你应该准备这...

water 2年前 (2017-03-17) 723℃ 0评论 0喜欢

深入理解java虚拟机(十一)

深入理解java虚拟机(十一)
线程安全与锁优化 概述 软件也发展的初期,程序编写都是以算法为核心的,程序员会把数据和过程分别作为独立的部分来考虑,数据代表问题空间中的客体,程序代码则用于处理这些数据,这种思维方式是直接站在计算机的角度去抽象问题和解决问题,称为面向过程的编程思想。与此相对,面向对象的编程思想...

water 2年前 (2017-03-16) 654℃ 0评论 0喜欢

深入理解java虚拟机(十)

深入理解java虚拟机(十)
Java内存模型与线程 并发处理的广泛应用是使得Amdahl定律代替摩尔定律成为计算机性能发展源动力的根本原因,也是人类压榨计算机运算能力最有力的武器 概述 计算机同时去做几件事情,不仅是因为计算机的运算能力强大了,还有一个重要原因是计算机的运算速度与它的存储和通讯子系统速度的差...

water 2年前 (2017-03-14) 646℃ 0评论 0喜欢

深入理解java虚拟机(九)

深入理解java虚拟机(九)
晚期(运行期)优化 概述 Java程序最初是通过解释进行解释执行的,当虚拟机发现某个方法或代码块的运行特别频繁,就会把这些代码认定为“热点代码”,为了提高热点代码的执行效率,在运行时,虚拟机将会把这些代码编译成与本地平台相关的机器码,并进行各种层次的优化,完成这个任务的编译器曾...

water 2年前 (2017-03-14) 675℃ 0评论 0喜欢

深入理解java虚拟机(八)

深入理解java虚拟机(八)
早期(编译期)优化 概述 Java语言的“编译期”是一段“不确定的操作过程,它可能是指一个前段编译器把*.java文件转变成*.class文件的过程;也可能是指虚拟机的后端运行期编译器(JIT编译器)把字节码转变成机器码的过程,还可能是指使用静态提前编译器(AOT编译器,Ahe...

water 2年前 (2017-03-13) 613℃ 0评论 1喜欢

深入理解java虚拟机(七)

深入理解java虚拟机(七)
类加载及执行子系统的案例与实战 在Class文件格式与执行引擎这部分里,用户的程序能直接影响的内容并不太多,Class文件以何种格式存储,类型核实加载、如何连接,以及虚拟机如何执行字节码指令等都是由虚拟机直接控制的行为,用户程序无法对其进行改变。能通过程序进行操作的,主要是字节码...

water 2年前 (2017-03-13) 609℃ 0评论 0喜欢

深入理解java虚拟机(六)

深入理解java虚拟机(六)
虚拟机字节码执行引擎 代码编译的结果是从本地机器码转变为字节码,是存储格式发展的一小步,却是编程语言发展的一大步。 概述 执行引擎是Java虚拟机最核心的组成部分之一。“虚拟机”是一个相对于“物理机”的概念,这两种机器都有代码执行能力,其区别是物理机的执行引擎是直接建立在处理器...

water 2年前 (2017-03-09) 589℃ 0评论 0喜欢

深入理解java虚拟机(五)

深入理解java虚拟机(五)
虚拟机类加载机制 代码编译的结果从本地机器码转变为字节码,是存储格式发展的一小步,确是编程语言发展的一大步。 概述 虚拟机把描述类的数据从Class文件加载到内存,并对数据进行校验、转换解析和初始化,最终形成可以被虚拟机直接使用的Java类型,这就是虚拟机类加载机制 与那些在编...

water 2年前 (2017-03-02) 672℃ 0评论 0喜欢

深入理解java虚拟机(四)

深入理解java虚拟机(四)
类文件结构 代码编译的结构从本地机器码转变为字节码,是存储格式发展的一小步,确实编程语言发展的一大步 计算机只认识0和1,我们写的程序需要被编译器翻译成0和1构成的二进制格式才能被计算机执行。由于虚拟机及建立在虚拟机之上的大量程序语言大量出现,越来越多的程序语言选择了与操作系统和...

water 2年前 (2017-02-25) 755℃ 0评论 0喜欢

深入理解java虚拟机(三)

深入理解java虚拟机(三)
虚拟机性能监控与故障处理工具 概述 给一个系统定位问题的时候,知识、经验是关键基础,数据是依据,工具是运用知识处理数据的手段。这里说的数据包括:运行日志、异常堆栈、GC日志、线程快照(threaddump/javacore)文件、堆转储快照(heapdump/hprof文件)。 ...

water 2年前 (2017-02-24) 658℃ 0评论 0喜欢

深入理解java虚拟机(二)

深入理解java虚拟机(二)
垃圾收集器与内存分配策略 当需要排查各种内存溢出、内存泄漏问题时,当垃圾收集成为系统达到更高并发量的瓶颈时,我们需要对这些“自动化技术”内存动态分配与内存回收的技术实施必要的监控和调节 对象已死 垃圾收集器在对堆进行回收之前,第一件事就是确定这些对象有哪些存活哪些死去(不可能再被...

water 2年前 (2017-02-24) 662℃ 0评论 0喜欢

深入理解java虚拟机(一)

深入理解java虚拟机(一)
Java自动内存管理机制   Java程序员把内存控制的权利交给Java虚拟机,一旦出现内存泄漏和溢出方面的问题,不了解虚拟机是怎样使用内存的,排查错误将会成为一项异常艰难的工作   Java虚拟机内存的各个区域都有不同的作用、服务对象及可能产生的问题 运行...

water 2年前 (2017-02-23) 692℃ 0评论 0喜欢