
java
文章平均质量分 84
csy463168656
这个作者很懒,什么都没留下…
展开
-
Spring学习笔记(一)
模拟spring原理的实现 Spring 表示是一个开源框架,是为了解决企业应用程序开发复杂性而创建的。框架的主要优势之一就是其分层架构,分层架构允许使用者选择使用哪一个组件,同时为 J2EE 应用程序开发提供集成的框架。Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅限于服务器端的开发。从简单性、可测试性和松耦合的角度而言,任何Ja原创 2012-06-11 09:22:14 · 356 阅读 · 0 评论 -
《深入java虚拟机》学习笔记(第十九章 方法的调用和返回)
19.1 方法调用 Java提供了两种基本的方法:实例方法和类(静态)方法。这两种方法的区别在于: 1)实例方法在被调用之前,需要一个实例,而类方法不需要。 2)实例方法使用动态绑定,而类方法使用静态绑定 当Java虚拟机调用一个类方法时,它会基于对象引用的类型(通常在编译时可知)来选择所调用的方法。相反,当虚拟机调用一个实例方法时,它会基于对象实例的类(只能在运行时得知)来选择所调用的方转载 2012-09-10 14:41:18 · 658 阅读 · 0 评论 -
《深入java虚拟机》学习笔记(第十章 栈和局部变量操作)
10.1 常量入栈操作 10.2 通用栈操作 10.3 把局部变量压入栈 10.4 弹出栈顶部元素,将其赋给局部变量 基本指令分析: 规律: store表示弹出操作数栈(操作数栈是一个栈)顶的数据放入局部变量区 store_x表示弹出操作数栈顶的数据放入局部变量区索引为x的地方 load表示将局部变量区中某个位置(即某个索引,因为转载 2012-09-09 10:35:30 · 392 阅读 · 0 评论 -
《深入java虚拟机》学习笔记(第九章 垃圾收集)
垃圾收集 9.2 垃圾收集算法 任何被根对象引用的对象都是可触及的,从而是活动的,另外,任何被活动的对象引用的对象都是可触及的,程序可以访问任何可触及的对象,所以这些对象必须保留在堆里面,任何不可触及的对象都可以被收集,因为程序没有办法来访问它们。 9.3 引用计数收集器 堆中每一个对象都有一个引用计数,当一个对象被创建,并且指向对象的引用被分配给一个变量,这个对象的引用计数被置为1,当一原创 2012-09-08 13:03:00 · 510 阅读 · 0 评论 -
java设计模式之Iterator
Iterator 对容器元素的访问涉及到三个方面: 1. 容器的类型 2. 检索容器内元素的方法 3. 对元素的操作 首先要抽象出一个Collection接口代码如下: public interface Collection { void add(Object o); int size(); Iterator iterator(); } 然后抽象出一个Iterator接原创 2012-08-27 21:47:52 · 318 阅读 · 0 评论 -
JAVA反射机制 .
Reflection是Java 程序开发语言的特征之一,它允许运行中的 Java 程序对自身进行检查,或者说"自审",并能直接操作程序的内部属性。例如,使用它能获得 Java 类中各成员的名称并显示出来。 Java 的这一能力在实际应用中也许用得不是很多,但是在其它的程序设计语言中根本就不存在这一特性。例如,Pascal、C 或者 C++ 中就没有办法在程序中获得函数定义相关的信息。 Jav转载 2012-08-27 19:41:29 · 241 阅读 · 0 评论 -
《深入java虚拟机》学习笔记(第八章 连接模型)
8.1 动态连接和解析 Class文件把它所有的引用符号保存在一个地方——常量池。每一个class文件有一个常量池,每一个被Java虚拟机装载的类或者接口都有一份内部版本的常量池,被称作运行时常量池。运行时常量池是一个特定于实现的数据结构,数据结构映射到class文件中的常量池。因此当一个类型被首次装载时,所有来自于类型的符号引用都装载到了类型的运行时常量池。 当程序运行到某个时刻,如果某个特转载 2012-09-06 11:08:43 · 697 阅读 · 0 评论 -
java设计模式之工厂系列
工厂模式 在讲工厂模式之前先了解下单例模式 单例模式的要点 显然单例模式的要点有三个;一是某各类只能有一个实例;二是它必须自行创建这个事例;三是它必须自行向整个系统提供这个实例。在下面的对象图中,有一个"单例对象",而"客户甲"、"客户乙" 和"客户丙"是单例对象的三个客户对象。可以看到,所有的客户对象共享一个单例对象。而且从单例对象到自身的连接线可以看出,单例对象持有对自己的引用。原创 2012-08-27 08:34:17 · 559 阅读 · 0 评论 -
《深入java虚拟机》学习笔记(第六章 java class 文件)
一、class文件内容 每个java类只能有一个class文件或接口,尽管class文件与java语言结构相关,但它并不一定必须与java语言相关,实际上,java class文件的形式能够表示java源代码中无法表达的有效程序,如下图: class文件内容 Java class 文件中包含了java虚拟机所需知道的,关于类或接口的所有信息。 按照它们在class文件中出现的顺转载 2012-09-04 20:19:43 · 357 阅读 · 0 评论 -
《深入java虚拟机》学习笔记(第七章 类型的生命周期)
概述 这一章以一个Java类型(类或接口)的生命周期为例来讨论开始阶段的装载、连接和初始化,以及占Java类型生命周期绝大部分时间的对象实例化、垃圾收集和对象终结,然后是java类型生命周期的结束,也就是从虚拟机中卸载。 7.1、类型装载、连接与初始化 Java虚拟机通过装载、连接和初始化一个Java类型,使该类型可以被正在运行的java程序所使用。其中,类装载就是把二进制形式的Java类型转载 2012-09-04 16:58:23 · 385 阅读 · 0 评论 -
java设计模式之责任链
责任链 责任链模式(Chain of Responsibility)是Web项目中最经常用到的一个设计模式,比如是Apache Tomcat 的对Encoding的 处理,Struts2 的拦截器, jsp servlet 的Filter 等等,都是基于责任链模式设计的。比如有一个作业任务,先有一个对象对其负责处理,之后又交给其他的一个对象处理,一次传递下去,这是最通俗最简单的责任链模式的应用。原创 2012-08-25 20:54:10 · 377 阅读 · 0 评论 -
《深入java虚拟机》学习笔记(第五章 java虚拟机)
第五章 JAVA虚拟机 1.1.1 初始线程 Java程序中初始的main()方法,作为该程序初始线程的起点。任何其它的线程,都是有这个初始线程启动的。 在JAVA虚拟机内部,有两种类型的线程:守护线程和非守护线程(实时线程)。比如执行垃圾收集任务的线程,就是一种守护线程。我们也可以把我们自己创建的线程标记为守护线程。初始线程,不是守护线程。 当虚拟机中所有的实时转载 2012-09-03 11:07:30 · 554 阅读 · 0 评论 -
java设计模式之Strategy
Strategy 策略模式,就是将一个算法的不同实现封装成一个个单独的类,这些类实现同一个接口,使用者直接使用该接口来访问具体的算法。这个样子,使用者就可以使用不同的算法来实现业务逻辑了。 例如我想对两个对象进行比较我们首先会抽象出一个Comparable接口代码如下: public interface Comparable { public int compareTo(Object o原创 2012-08-28 20:35:55 · 318 阅读 · 0 评论 -
Spring学习笔记(七)
Spring ,Hibernate,Struts 整合 这里为了逻辑的连贯性我把最基础的代码也都贴出来了,主要是为了讲解为什么要整合它们,以及怎么样去整合。首先我们要实现一个用户注册的小项目,在这里我们先只用jsp去写,大体思想是这样的,我们设计一个用户名,密码,以及确认密码,提交的界面,对注册进行检查,当用户名唯一时注册成功定向到成功的界面,反之就定向到失败的界面。 代原创 2012-06-14 15:06:44 · 526 阅读 · 0 评论 -
Spring学习笔记(四)
AOP(Aspect-Oriented-Programming) 面向切面编程 首先来模拟下AOP:这里要用到动态代理的有关知识。动态代理是能在运行过程中根据接口的类型动态的调用实现该接口的类,是相对于静态的来说的。我们还是先来看实现。 我们写了一个LogInterceptor类来在接口方法调用前后加入一部份处理工作这里仅仅在方法调用前后向后台输出两句字符串,代码如下: import ja原创 2012-06-11 16:17:17 · 519 阅读 · 0 评论 -
java设计模式之动态代理
1. 代理模式 代理模式的作用是:为其他对象提供一种代理以控制对这个对象的访问,在某些情况下,一个客户不想或者不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用。 代理模式一般涉及的角色有: 抽象角色:声明真实对象和代理对象的共同接口; 代理角色:代理对象角色对象含有对真实对象的引用,从而可以操作真实对象,同时代理对象提供与真实对象相同的接口以便在任何时刻都能原创 2012-09-02 15:33:23 · 492 阅读 · 0 评论