摘要: 这里就作者所学及其理解对《深入理解Java虚拟机》这本书的内容发表看法,如有错误欢迎指出。 在说类加载的时候我们先来看看一个类的生命周期,如图示: 类加载在这里包括了加载、验证、准备、解析、初始化五个部分,当一个类要加载进内存时虚拟机会依次执行这五个过程(解析过程可能会发生在初始化以后)。 一、加载 阅读全文
posted @ 2018-12-06 16:23 问月晚安 阅读(346) 评论(0) 推荐(0) 编辑
摘要: 模版方法模式就是使用一个抽象类声明一个或一组规范,并且定义一个模版方法使用这组规范所产生的结果,而这组规范会等到子类实现它时再根据不同的情况实现不同的策略。我们举一个简单直观的例子说明这个模式。/** 定义模版方法抽象类* */abstract class TemFu... 阅读全文
posted @ 2018-12-06 13:45 问月晚安 阅读(114) 评论(0) 推荐(0) 编辑
摘要: Java虚拟机里的内存分配了许多区域用于存储不同的内容,这里就作者所学及其理解发表看法,如有错误欢迎指出。在《深入理解Java虚拟机》这本书中对Java虚拟机内存在运行时数据区域有下面的图示。其中绿色区域是线程共享的,黄色区域是线程私有的。但是为什么要使用运行时数据区... 阅读全文
posted @ 2018-12-05 18:48 问月晚安 阅读(119) 评论(0) 推荐(0) 编辑
摘要: 内部类可以将一个类的定义定义在另一个类的定义中,这个类就叫做内部类。让我们看下关于定义一个内部类的简单示例。public class TestOne { /* * 定义一个内部类 * */ public class InnerClass{}... 阅读全文
posted @ 2018-12-04 15:20 问月晚安 阅读(131) 评论(0) 推荐(0) 编辑
摘要: CSS定位的基本思想很简单,它允许你定义元素框相对于其正常位置应该出现的位置,或者相对于父元素、另一个元素甚至浏览器窗口本身的位置。但是却能够形成丰富的表现。 一、相对定位:relative相对定位是相对于自身定位的元素进行定位的,它的参照物就是本身。还有一点,相对定... 阅读全文
posted @ 2018-12-04 13:50 问月晚安 阅读(151) 评论(0) 推荐(0) 编辑
摘要: 一、饿汉式单例/** 单例模式* *//** 饿汉式单例模式* */class Singleton{ /* * 声明私有静态成员变量singleton。 * */ private static Singleton singleton = new... 阅读全文
posted @ 2018-12-03 13:17 问月晚安 阅读(104) 评论(0) 推荐(0) 编辑
摘要: 一、简单工厂/** 简单工厂(静态工厂)* *//** 抽象产品类* */interface CarProduct{ /* * 抽象产品类的抽象方法show()。 * */ public void show();}/** 具体产品类* */cl... 阅读全文
posted @ 2018-12-03 11:50 问月晚安 阅读(110) 评论(0) 推荐(0) 编辑
摘要: 一、定义装饰对象/** 定义一个装饰对象Person。* 包含一个方法feature()。* */class Person{ public void feature(){ System.out.println("I am a Person"); ... 阅读全文
posted @ 2018-12-03 10:42 问月晚安 阅读(101) 评论(0) 推荐(0) 编辑
摘要: /** 定义一个类A。* 类A中定义了回调函数callBack()。* */class A{ public void callBack(){ System.out.println("I am a callBack_function"); }}... 阅读全文
posted @ 2018-12-01 22:15 问月晚安 阅读(219) 评论(0) 推荐(0) 编辑
摘要: 在这个例子中使用Java面向对象中的多态来简单介绍静态绑定和动态绑定的区别。/** 创建一个Father类。* 为了方便获取,成员变量a设置为public的。* */class Father{ public int a = 10; public void ... 阅读全文
posted @ 2018-12-01 18:22 问月晚安 阅读(186) 评论(0) 推荐(0) 编辑