摘要:
概述 单例模式是Java中常见的设计模式,常见的单例模式有三种实现方式:懒汉式,饿汉式,改进型的懒汉式。 单例模式的特点是: (1)单例模式只能有一个实例,并且不能被外部实例化 (2)单例模式必须自己创建自己的唯一实例 (3)单例模式必须对其他对象共享自己的唯一实例 懒汉式实现 饿汉式实现 懒汉式和 阅读全文
摘要:
概述 工厂模式提供了创建对象的最佳模式,它使用统一的接口来指向新建的对象,屏蔽了创建对象的逻辑。 工厂模式主要分为三种:(1)简单工厂 (2)工厂方法 (3)抽象工厂 简单工厂 简单工厂的实现比较简单,即工厂类中主要有个静态方法,用来接收传进来的参数,并根据参数的不同返回不同类的实例对象。 假设有一 阅读全文
摘要:
对于Java程序员来说,内存是由JVM自动管理的,所以一旦出现内存泄漏或溢出的问题,不了解JVM的内存结构和各个内存区域的工作职责,将对解决问题带来很大的麻烦,本文参照周志明的《深入理解Java虚拟机》,介绍JVM的内存结构,比较枯燥,但对知其然,不知所以然的编码人员来说还是有一定帮助的。 按照Ja 阅读全文
摘要:
Spring框架简介 由上图官方提供的Spring框架结构图可看出,Spring框架是基于core层的多级J2EE应用程序框架,是轻量级的IOC和AOP容器框架,主要负责对JavaBean的生命周期进行有效管理,为程序员采用接口编程,提高程序可维护性和扩展性提供了可能,并且拥有比较强的与其他框架集成 阅读全文
摘要:
类加载器 classloader:谈到类加载,不得不提的就是负责此项工作的类加载器classloader,classloader的职责是将Java源文件编译后的字节码文件加载到内存中去执行。 类加载至卸载过程 步骤一、类加载机制 当系统运行时,类加载器将.class文件的二进制数据从外部存储器(如光 阅读全文
摘要:
JVM生命周期可以分为以下三个阶段 启动:任何class文件的main函数都可认为是jvm示例的起点。 运行:以main函数为起点,后续的线程都由它启动,包括守护线程和用户线程。main方法启动的线程是用户线程,守护线程是JVM自己使用的线程如GC线程。 退出&异常退出:用户线程完全退出了,jvm示 阅读全文
摘要:
JVM(Java Virtual Machine)是Java运行的基石。它向下通过映射规则关联并操作所有操作系统,向上提供一系列的JavaAPI。是Java与硬件无关,与操作系统无关,跨平台运行的关键存在。 JVM不关心Java源文件,只关心源文件生成的class file,并映射到OS的系统调用, 阅读全文