Java
文章平均质量分 95
Java开发
Chiclaim
于
展开
-
深入理解 Java 泛型
彻底搞懂 Java 泛型原创 2023-10-14 11:17:46 · 621 阅读 · 2 评论 -
Java设计模式实战 ~ 深入理解建造者模式与实战
本文介绍了建造者模式的基本原理、建造者模式的演化、建造者模式与重叠构造函数/JavaBeans 模式的对比,还深入分析了建造者模式与静态工厂在真实案例的选择,最后通过真实项目演示了建造者模式的使用原创 2019-09-09 23:52:21 · 2429 阅读 · 1 评论 -
Java设计模式实战 ~ 适配器模式分析与实战
本文详细介绍了适配器模式的原理、使用场景、优点,以及缺省适配器模式。最后通过真实案例介绍适配器模式的使用原创 2019-09-13 20:19:32 · 2247 阅读 · 0 评论 -
Java设计模式实战 ~ 深入理解代理模式
本文详细介绍了静态代理、动态代理,还详细分析了 JDK 动态代理的源码分析,最后介绍了代理模式和装饰模式的区别原创 2019-09-16 21:08:01 · 2895 阅读 · 2 评论 -
Java 核心基础(一)Annotation 注解
Annotation 是 Java1.5 推出的新特性。它用来描述 Java 中的代码,如类、方法、字段等等。所以也把注解称之为元数据。Java1.5 内置的常见的注解:@Deprecated @Override @Deprecated使用 Java 内置的 @Deprecated 注解,举个例子:@Deprecatedpublic void test(){ // d...原创 2012-05-05 09:32:10 · 12535 阅读 · 0 评论 -
深入理解 Java 虚拟机(六)~ Garbage Collection 剖析
本文详细介绍了 JVM 关于 Garbage Collection 相关的知识点。读完本文相信你对 JVM 的垃圾回收机制有一个全面而系统的了解。原创 2019-11-24 21:57:39 · 3025 阅读 · 1 评论 -
深入理解 Java 虚拟机(五)~ 对象的创建过程
本文详细介绍了对象的创建过程如类的加载、内存的分配和初始化,分配内存时的同步方式,对象的初始化操作。还介绍了对象的内存布局,如对象头、实例数据、对齐填充。最后介绍了 Hotspot 如何进行对象的访问定位。原创 2019-10-15 19:36:09 · 2615 阅读 · 1 评论 -
深入理解 Java 虚拟机(四)~ 各种容易混淆的常量池
本文详细介绍了 Java 中的常量和字面量的区别,字节码中的常量池和运行时常量池的区别,最后详细介绍了字符串常量池和 String.intern 方法原创 2019-10-13 20:43:43 · 3091 阅读 · 0 评论 -
深入理解 Java 虚拟机(三)~ class 字节码的执行过程剖析
本文详细介绍了 Java 内存区域结构,方法的调用及方法调用的指令,方法重载解析及动态分派的实现原理,还介绍了 Java 对动态类型的支持。最后介绍基于栈的指令集和基于寄存器的指令集的区别。原创 2019-10-11 18:54:22 · 2527 阅读 · 0 评论 -
深入理解 Java 虚拟机(二)~ 类的加载过程剖析
本文详细介绍了类的加载过程:加载、验证、准备、解析、初始化,重点介绍了和我们开发息息相关的类加载器,类加载器死锁问题。原创 2019-10-05 22:35:33 · 4125 阅读 · 1 评论 -
深入理解 Java 虚拟机(一)~ class 字节码文件剖析
本文分析了字节码文件的组成,如魔数、字节码版本、常量池、字段、方法、属性等,还介绍了 invokeDynamic 指令,并分析了其实现原理;接着分析了字节码指令集, 并通过一个案例分析了其对应的指令,每执行完一个指令,展示其对应的操作数栈和局部变量表的情况。最后通过分析字节码的方式知道实际开发工作,加深对 Java 语言的理解深度,帮助我们编写更好的 Java 代码。原创 2019-09-30 16:31:59 · 7439 阅读 · 12 评论 -
程序设计之单例模式 VS 静态方法
我们在设计程序经常会有这种需求 , 某个类里的方法能够全局访问. 在这种情况下有两种实现方案 :1>单例模式(Singleton);2>静态方法.但是, 对于这两种实现方式 , 那种更好呢?在国内论坛上看了一下其他的一些看法 :http://hi.baidu.com/jiangzhong8715/item/c8b66e3d6afd2f677c034b07:...原创 2013-09-24 11:57:48 · 31038 阅读 · 10 评论 -
Java 除去字符串(String)中的换行字符(\r \n \t)
我们先来看几个例子:案例1:public class Test {public static void main(String[] args) {String s = "'sds gdasda" + "\n" + "edaeafd'";System.out.println("转换前:"+s);s = s.replaceAll("\r|\n", "");S...原创 2013-05-14 09:29:52 · 5523 阅读 · 1 评论 -
Java I/O 流操作(三)文件流、打印流、缓冲流、SequenceInputStream
Java I/O 系列文章目录:Java I/O 流操作(一)System Properties Runtime 类 Java I/O 流操作(二)字节流与缓冲流 Java I/O 流操作(三)File 文件操作、PrintWriter、SequenceInputStream Java I/O 流操作(四)对象的序列化本文涉及到的I/O类File Properties F...原创 2013-03-23 17:17:03 · 3743 阅读 · 0 评论 -
Java I/O 流操作(二)字节流与缓冲流
Java I/O 系列文章目录:Java I/O 流操作(一)System Properties Runtime 类 Java I/O 流操作(二)字节流与缓冲流 Java I/O 流操作(三)File 文件操作、PrintWriter、SequenceInputStream Java I/O 流操作(四)对象的序列化本文涉及到的 I/O 类System.in /Syste...原创 2013-03-23 17:03:27 · 16631 阅读 · 2 评论 -
Java I/O 流操作(一)System、Properties、Runtime 类
Java I/O 系列文章目录:Java I/O 流操作(一)System Properties Runtime 类 Java I/O 流操作(二)字节流与缓冲流 Java I/O 流操作(三)File 文件操作、PrintWriter、SequenceInputStream Java I/O 流操作(四)对象的序列化System 类我们先看下 Java 官方文档...原创 2013-03-23 16:58:53 · 4722 阅读 · 0 评论 -
Java I/O 流操作(四)对象的序列化
Java I/O 系列文章目录:Java I/O 流操作(一)System Properties Runtime 类 Java I/O 流操作(二)字节流与缓冲流 Java I/O 流操作(三)File 文件操作、PrintWriter、SequenceInputStream Java I/O 流操作(四)对象的序列化今天我们来介绍下,Java 中对象的序列化和反序列化。J...原创 2013-03-23 16:49:40 · 7558 阅读 · 1 评论 -
Java 集合框架 TreeSet、TreeMap 排序及 hasCode 方法详解
Set 集合的排序我们知道,Set 集合是无序的、不重复的集合。可以使用 TreeSet 类,TreeSet 底层是通过 TreeMap 实现的。那么 TreeSet 进行排序的规则是怎样的呢?TreeSet 支持两种排序方式:自然排序和定制排序。在默认情况下,TreeSet 采用自然排序。TreeSet 会调用集合元素的 compareTo(Object obj) 方法来比...原创 2013-03-23 16:36:45 · 6169 阅读 · 0 评论 -
Java 配置环境变量
Java配置环境变量步骤如下:首先下载Java安装工具包http://www.oracle.com/technetwork/java/javase/downloads/index.html发假设你已经下载完毕并且安装在C:\Program Files目录下.1>win7系统打开我电脑属性--高级如下图所示2>在“系统变量”中,设置3项属性,JAVA_...原创 2013-03-22 17:13:36 · 2482 阅读 · 4 评论 -
Java 多线程(十一)JDK 同步集合
Java 多线程 系列文章目录:Java 多线程(一)线程间的互斥和同步通信 Java 多线程(二)同步线程分组问题 Java 多线程(三)线程池入门 Callable 和 Future Java 多线程(四)ThreadPoolExecutor 线程池各参数的意义 Java 多线程(五)Lock 和 Condition 实现线程同步通信 Java 多线程(六)Semaphore ...原创 2013-03-20 13:34:51 · 3492 阅读 · 0 评论 -
Java 多线程(十)ArrayBlockingQueue 阻塞队列
Java 多线程 系列文章目录:Java 多线程(一)线程间的互斥和同步通信 Java 多线程(二)同步线程分组问题 Java 多线程(三)线程池入门 Callable 和 Future Java 多线程(四)ThreadPoolExecutor 线程池各参数的意义 Java 多线程(五)Lock 和 Condition 实现线程同步通信 Java 多线程(六)Semaphore ...原创 2013-03-20 13:32:50 · 11250 阅读 · 4 评论 -
Java 多线程(九)Exchanger 同步工具类
Java 多线程 系列文章目录:Java 多线程(一)线程间的互斥和同步通信 Java 多线程(二)同步线程分组问题 Java 多线程(三)线程池入门 Callable 和 Future Java 多线程(四)ThreadPoolExecutor 线程池各参数的意义 Java 多线程(五)Lock 和 Condition 实现线程同步通信 Java 多线程(六)Semaphore ...原创 2013-03-20 13:31:22 · 2095 阅读 · 0 评论 -
Java 多线程(八)CountDownLatch 同步工具类
Java 多线程 系列文章目录:Java 多线程(一)线程间的互斥和同步通信 Java 多线程(二)同步线程分组问题 Java 多线程(三)线程池入门 Callable 和 Future Java 多线程(四)ThreadPoolExecutor 线程池各参数的意义 Java 多线程(五)Lock 和 Condition 实现线程同步通信 Java 多线程(六)Semaphore 实...原创 2013-03-20 11:58:12 · 2056 阅读 · 0 评论 -
Java 多线程(七)CyclicBarrier 同步的工具类
Java 多线程 系列文章目录:Java 多线程(一)线程间的互斥和同步通信 Java 多线程(二)同步线程分组问题 Java 多线程(三)线程池入门 Callable 和 Future Java 多线程(四)ThreadPoolExecutor 线程池各参数的意义 Java 多线程(五)Lock 和 Condition 实现线程同步通信 Java 多线程(六)Semaphore 实...原创 2013-03-20 11:56:47 · 2414 阅读 · 0 评论 -
Java 多线程(六)Semaphore 实现信号灯
Java 多线程 系列文章目录:Java 多线程(一)线程间的互斥和同步通信 Java 多线程(二)同步线程分组问题 Java 多线程(三)线程池入门 Callable 和 Future Java 多线程(四)ThreadPoolExecutor 线程池各参数的意义 Java 多线程(五)Lock 和 Condition 实现线程同步通信 Java 多线程(六)Semaphore 实...原创 2013-03-20 11:55:39 · 4222 阅读 · 0 评论 -
Java 多线程(五)Lock 和 Condition 实现线程同步通信
Java 多线程 系列文章目录:Java 多线程(一)线程间的互斥和同步通信 Java 多线程(二)同步线程分组问题 Java 多线程(三)线程池入门 Callable 和 Future Java 多线程(四)ThreadPoolExecutor 线程池各参数的意义 Java 多线程(五)Lock 和 Condition 实现线程同步通信 Java 多线程(六)Semaphore 实...原创 2013-03-20 11:54:34 · 13387 阅读 · 6 评论 -
Java 多线程(三)线程池入门 Callable 和 Future
Java 多线程 系列文章目录:Java 多线程(一)线程间的互斥和同步通信 Java 多线程(二)同步线程分组问题 Java 多线程(三)线程池入门 Callable 和 Future Java 多线程(四)ThreadPoolExecutor 线程池各参数的意义 Java 多线程(五)Lock 和 Condition 实现线程同步通信 Java 多线程(六)Semaphore 实...原创 2013-03-20 11:52:37 · 2903 阅读 · 0 评论 -
Java 多线程(一)线程间的互斥和同步通信
Java 多线程 系列文章目录:Java 多线程(一)线程间的互斥和同步通信 Java 多线程(二)同步线程分组问题 Java 多线程(三)线程池入门 Callable 和 Future Java 多线程(四)ThreadPoolExecutor 线程池各参数的意义 Java 多线程(五)Lock 和 Condition 实现线程同步通信 Java 多线程(六)Semaphore 实...原创 2013-03-20 11:48:27 · 4636 阅读 · 0 评论 -
Java 多线程(四)ThreadPoolExecutor 线程池各参数的意义
Java 多线程 系列文章目录:Java 多线程(一)线程间的互斥和同步通信 Java 多线程(二)同步线程分组问题 Java 多线程(三)线程池入门 Callable 和 Future Java 多线程(四)ThreadPoolExecutor 线程池各参数的意义 Java 多线程(五)Lock 和 Condition 实现线程同步通信 Java 多线程(六)Semaphore 实...原创 2012-12-19 15:28:27 · 10166 阅读 · 3 评论 -
Java XML 解析方式汇总
解析方式概述今天介绍下在 Java 中操作 XML 的常见方案:DOM、SAXDOM 解析的优缺点和使用场景:优点:解析的时候整个 XML 文档树都在内存当中。支持芯新增、删除、修改、重新排列等功能。 缺点:将整个 XML 文档树都放进内存,如果 XML 文档比较大的话,会对内存形成比较大的压力。 使用场合:一旦解析了文档还需要多次访问这些数据,而且资源比较充足(如内存、CPU等...原创 2012-08-15 11:42:42 · 7251 阅读 · 1 评论 -
Java 网络编程详解(一)
网络通信基础概念网络通讯的三要素:IP地址 端口号 传输协议下面通过一张图来描述下,三者之间的关系和作用:网络模型:计算机网络是指由通信线路互相连接的许多自主工作的计算机构成的集合体,各个部件之间以何种规则进行通信,就是网络模型研究的问题。网络模型一般是指 OSI 七层参考模型和 TCP/IP 四层参考模型。这两个模型在网络中应用最为广泛。网络模型分为 OSI 模型...原创 2012-08-14 22:46:06 · 6310 阅读 · 0 评论 -
Java 网络编程详解(二)
Java 网络编程详解系列文章目录:Java网络编程详解(一) Java 网络编程详解(二)在上一篇关于 Java 网络编程的文章中【Java网络编程详解(一)】,我们介绍网络通信的一些基础概念,如:OSI网络模型、TCP/IP 网络模型、UDP 协议、TCP 协议以及 Java 中如何实现网络编程。Java 网络编程实现图片上传这一次我们来学习下,如何通过 Java 网络编程实现...原创 2012-08-14 17:59:05 · 11703 阅读 · 1 评论 -
Java 多线程(二)同步线程分组问题
Java 多线程 系列文章目录:Java 多线程(一)线程间的互斥和同步通信 Java 多线程(二)同步线程分组问题 Java 多线程(三)线程池入门 Callable 和 Future Java 多线程(四)ThreadPoolExecutor 线程池各参数的意义 Java 多线程(五)Lock 和 Condition 实现线程同步通信 Java 多线程(六)Semaphore 实...原创 2012-08-11 15:07:16 · 3937 阅读 · 2 评论 -
Java ClassLoader 类加载器详解
本文主要内容:类加载器简介 双亲委派机制 自定义类加载器 Class.forName() VS ClassLoader.loadClass() 类加载器死锁问题 一个类加载器的高级问题ClassLoader 类加载器简介Java 类加载器主要是用来当程序需要的某个类时,通过类加载器类把类的二进制加载到内存中。Java 提供了 3 个类加载器,它们分别是:Bo...原创 2012-07-12 09:46:16 · 14406 阅读 · 2 评论 -
Java 核心基础(二)反射 API 详解
本文涉及反射的 API 类由:Class Method Field Contructor Type ParameterizedTypeJava 反射是一个非常重要的技术,很多框架都是通过反射来完成的。Java反射机制主要提供了以下功能:在运行时判断任意一个对象所属的类; 在运行时构造任意一个类的对象; 在运行时判断任意一个类所具有的成员变量和方法; 在运行时调用任意...原创 2012-05-06 10:34:15 · 3354 阅读 · 0 评论