随笔分类 - Java
摘要:jmap查看内存使用情况与生成heapdump 如果想分析自己的JAVA Application时,可以使用jmap程序来生成heapdump文例: jmap -heap 1234 (1234为进程号) jmap是JDK自带的一个工具,非常小巧方便,其支持参数如下: jmap查看内存使用情况与生成h
        阅读全文
            
摘要:Java命名规范 一、命名规范 1、 项目名全部小写 2、 包名全部小写 3、 类名首字母大写,如果类名由多个单词组成,每个单词的首字母都要大写。 如:public class MyFirstClass{} 4、 变量名、方法名首字母小写,如果名称由多个单词组成,每个单词的首字母都要大写。 如:in
        阅读全文
            
摘要:JProfiler远程监控Linux上Tomcat的安装过程细讲(步骤非常详细!!!) 1.文件准备: 服务器:CentOS Linux release 7.3.1611 (Core) Apache Tomcat/7.0.81,Oracle JDK Java1.7.0_79 jprofiler_li
        阅读全文
            
摘要:FileChannel类的理解和使用(java.nio.channels.FileChannel) 知识点: 1、FileChannel类及方法理解;2、普通输入输出流复制文件;3、FileChannel复制文件;4、新名词记录:{MappedByteBuffer:文件映射在内存的直接换成字节数据;
        阅读全文
            
摘要:平台无关性 Java是与平台无关的语言,这得益于Java源代码编译后生成的存储字节码的文件,即Class文件,以及Java虚拟机的实现。不仅使用Java编译器可以把Java代码编译成存储字节码的Class文件,使用JRuby等其他语言的编译器也可以把程序代码编译成Class文件,虚拟机并不关心Cla
        阅读全文
            
摘要:JVM类加载过程 类从被加载到虚拟机内存中开始,到卸载出内存为止,它的整个生命周期包括:加载、验证、准备、解析、初始化、使用和卸载七个阶段。它们开始的顺序如下图所示: 其中类加载的过程包括了加载、验证、准备、解析、初始化五个阶段。在这五个阶段中,加载、验证、准备和初始化这四个阶段发生的顺序是确定的,
        阅读全文
            
摘要:JVM垃圾回收算法(最全) 下面是JVM虚拟机运行时的内存模型: 1.方法区 Perm(永久代、非堆) 2.虚拟机栈 3.本地方法栈 (Native方法) 4.堆 5.程序计数器 1 首先的问题是:jvm如何知道那些对象需要回收 ? 目前两种标识算法、三种回收算法、两种清除算法、三种收集器 引用计数
        阅读全文
            
摘要:Java多线程学习(总结很详细!!!) 此文只能说是java多线程的一个入门,其实Java里头线程完全可以写一本书了,但是如果最基本的你都学掌握好,又怎么能更上一个台阶呢? 本文主要讲java中多线程的使用方法、线程同步、线程数据传递、线程状态及相应的线程函数用法、概述等。首先让我们来了解下在操作系
        阅读全文
            
摘要:Java堆外内存管理 1、JVM可以使用的内存分外2种:堆内存和堆外内存: 堆内存完全由JVM负责分配和释放,如果程序没有缺陷代码导致内存泄露,那么就不会遇到java.lang.OutOfMemoryError这个错误。 使用堆外内存,就是为了能直接分配和释放内存,提高效率。JDK5.0之后,代码中
        阅读全文
            
摘要:Java内存模型和JVM内存管理 一、Java内存模型: 1、主内存和工作内存(即是本地内存): Java内存模型的主要目标是定义程序中各个变量的访问规则,即在JVM中将变量存储到内存和从内存中取出变量这样的底层细节。此处的变量与Java编程里面的变量有所不同步,它包含了实例字段、静态字段和构成数组
        阅读全文
            
摘要:115道Java经典面试题(面中率最高、最全) Java是一个支持并发、基于类和面向对象的计算机编程语言。下面列出了面向对象软件开发的优点: 代码开发模块化,更易维护和修改。 代码复用。 增强代码的可靠性和灵活性。 增加代码的可理解性。 代码开发模块化,更易维护和修改。 代码复用。 增强代码的可靠性
        阅读全文
            
摘要:Java 中的多线程编程 一、多线程的优缺点 多线程的优点: 1)资源利用率更好2)程序设计在某些情况下更简单3)程序响应更快 多线程的代价: 1)设计更复杂虽然有一些多线程应用程序比单线程的应用程序要简单,但其他的一般都更复杂。在多线程访问共享数据的时候,这部分代码需要特别的注意。线程之间的交互往
        阅读全文
            
摘要:Java开发中的23种设计模式 设计模式(Design Patterns) ——可复用面向对象软件的基础 设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。 毫无疑问,设计
        阅读全文
            
摘要:package ydj; import java.awt.*; import javax.swing.*; public class huayuan extends JFrame { public huayuan() { mianban mb=new mianban(); Container con
        阅读全文
            
摘要:public class BinarySearch { /** * 二分查找算法 * * @param srcArray 有序数组 * @param key 查找元素 * @return key的数组下标,没找到返回-1 */ public static void main(String[] arg
        阅读全文
            
摘要://堆排序 不稳定 import java.util.Arrays; public class HeapSort { public static void main(String[] args) { int[] a={49,38,65,97,76,13,27,49,78,34,12,64}; int arrayLength=a.length; ...
        阅读全文
            
摘要:java中多线程的实现方法有两种:1.直接继承thread类;2.实现runnable接口;同步的实现方法有五种:1.同步方法;2.同步代码块;3.使用特殊域变量(volatile)实现线程同步;4.使用重入锁实现线程同步;5.使用局部变量实现线程同步 。其中多线程实现过程中需注意重写或者覆盖run
        阅读全文
            
摘要:java中==与equal()方法的区别 java中==比较的是地址,equal比较的是值。 示例: 1 2 3 4 Integer a1 = new Integer(456);//实例化一个对象 Integer a2 = new Integer(456);//实例化一个对象 System.out.
        阅读全文
            
摘要:一、构造函数 String(byte[ ] bytes):通过byte数组构造字符串对象。 String(char[ ] value):通过char数组构造字符串对象。 String(Sting original):构造一个original的副本。即:拷贝一个original。 String(Str
        阅读全文
            
 
                    
                
 
 浙公网安备 33010602011771号
浙公网安备 33010602011771号