java
文章平均质量分 78
别了耳听爱情的年龄
这个作者很懒,什么都没留下…
展开
-
Java面向对象设计最佳实践——内置类设计
。,内置类(Local Class)类内置类(Nested Class),其定义在java.util.Map.Entry<K, V>private final static是通用的设计。外层类对其是完全可视的,因此private 是没有问题的。至于final的修饰,要谈到笔者设计经验中的一个原则,尽量使用final修饰可修饰的。其中有几个好处,比如线程安全、拒绝子类、标准化(在后面的设...转载 2018-03-01 11:11:00 · 592 阅读 · 0 评论 -
AOP--代理模式,拦截器的简易实现及原理
上文中提到代理分为静态代理和动态代理,采用代理是为了通过不修改源代码的情况下给程序动态统一添加功能,利用代理技术可以将业务逻辑中一些非业务逻辑的代码分离出来,把他们独立到业务逻辑类外,比如日志记录,性能统计,安全控制,事务处理,异常处理等。这样做,不仅降低了业务逻辑和非业务逻辑的耦合性,提高程序的可重用性,同时提高了开发的效率。下面以添加日志记录为例,分析静态代理的使用。创建一个用户管理类User...转载 2018-03-03 11:53:21 · 602 阅读 · 0 评论 -
AOP--Filter使用,过滤器和拦截器的区别
AOP(Aspect-Oriented Programming,面向切面编程)是一种编程思想,并不是一种具体的实现,谈到实现一般有Filter和代理模式两种常见的使用方式,Spring中的AOP也是封装代理模式完成的,可以说是OOP(Object-Oriented Programing,面向对象编程)的补充和完善。OOP利用封装、继承和多态把一切事物打造成对象结构,但是对于所有对象中都存在的一些公...转载 2018-03-03 11:52:04 · 621 阅读 · 0 评论 -
消息的本质
消息到底是什么呢?英文称之为message。根据百度百科的解释,在我国古代把客观世界的变化中的事实称为“消息”,到了近代,“消息”逐渐演变成了“新闻”的含义。在我们研究的计算机科学里,消息往往表示了模块之间的通信交互。我们着重研究的是计算机软件里的消息。我们从以下几点定义入手来看看消息的本质: 1.UML里把所有函数的调用都称为消息。 2.windows gui程序里,存在鼠标消息,...转载 2018-03-03 09:30:44 · 543 阅读 · 0 评论 -
事件机制
事件其实就是系统级别的消息。消息的概念更广一些,通常一个对象向另一个对象的请求(Request)就是一条消息。而事件往往是由系统发出来的,经由操作系统到达应用程序来处理,是“反向”的消息。我们和一个应用程序(应用服务或应用系统)交互,看上去我们是和应用直接交互,事实上我们是先和OS交互,我们要先和硬件交互(敲击键盘,点击鼠标,触屏,其他输入设备),而硬件发出中断给驱动程序,这个时候才到软件处理层(...转载 2018-03-03 09:29:13 · 276 阅读 · 0 评论 -
Java回调机制解析
模块之间总是存在这一定的接口,从调用方式上看,可以分为三类:同步调用、回调和异步调用。同步调用是一种阻塞式调用,也是我们在写程序中经常使用的;回调是一种双向的调用模式,也就是说,被调用的接口被调用时也会调用对方的接口,这句话可能有点绕,等文章后面举例说明;异步调用是一种类似消息或事件的机制,解决了同步阻塞的问题,举例来讲:A通知B后,他们各走各的路,互不影响,不用像同步调用那样,A通知B后,非得等...转载 2018-03-03 09:27:32 · 135 阅读 · 0 评论 -
分析Java的回调机制
一、回调函数 在计算机程序设计中,回调函数,或简称回调,是指通过函数参数传递到其它代码的,某一块可执行代码的引用。这一设计允许了底层代码调用在高层定义的子程序。所谓回调函数是指:在程序中,A类和B类分别有两个函数M1、M2,其中A类首先调用了B类的M2函数,然后B类通过接口回调A类M1函数,我们就将M1称之为回调函数。 二、异步回调 1.1 示例故事背景 有一天毛驴的苹果电脑坏了,就去京...转载 2018-03-03 09:25:47 · 175 阅读 · 0 评论 -
Java关键字static、final使用小结
static 1. static变量 按照是否静态的对类成员变量进行分类可分两种:一种是被static修饰的变量,叫静态变量或类变量;另一种是没有被static修饰的变量,叫实例变量。两者的区别是: 对于静态变量在内存中只有一个拷贝(节省内存),JVM只为静态分配一次内存,在加载类的过程中完成静态变量的内存分配,可用类名直接访问(方便),当然也可以通过对象来访问(但是这是不推荐的)。对于...转载 2018-03-01 18:01:47 · 160 阅读 · 0 评论 -
java内部类详解及应用
import java.awt.BorderLayout;import java.awt.Frame;import java.awt.Label;import java.awt.TextField;import java.awt.event.MouseEvent;import java.awt.event.MouseMotionAdapter;/** * java内部类 * ...转载 2018-03-01 15:48:56 · 157 阅读 · 0 评论 -
【解惑】领略Java内部类的“内部”
内部类有两种情况:(1) 在类中定义一个类(私有内部类,静态内部类)(2) 在方法中定义一个类(局部内部类,匿名内部类) 1、私有内部类 —— 在方法之间定义的内部类,非静态 我们首先看看类中内部类的两个特点: (1) 在外部类的作用范围内可以任意创建内部类对象,即使内部类是私有的(私有内部类)。即内部类对包围它的外部类可见。例如 (实际上,内部类是可以设置为public公开的...转载 2018-03-01 11:18:22 · 130 阅读 · 0 评论 -
深入理解Java:内部类
一、什么是内部类? 内部类是指在一个外部类的内部再定义一个类。内部类作为外部类的一个成员,并且依附于外部类而存在的。内部类可为静态,可用protected和private修饰(而外部类只能使用public和缺省的包访问权限)。内部类主要有以下几类:成员内部类、局部内部类、静态内部类、匿名内部类二、内部类的共性(1)、内部类仍然是一个独立的类,在编译之后内部类会被编译成独立的.class文件,但是...转载 2018-03-01 11:13:30 · 179 阅读 · 0 评论 -
过滤器和拦截器的区别
1、拦截器是基于java的反射机制的,而过滤器是基于函数回调 2、过滤器依赖与servlet容器,而拦截器不依赖与servlet容器 3、拦截器只能对action请求起作用,而过滤器则可以对几乎所有的请求起作用 4、拦截器可以访问action上下文、值栈里的对象,而过滤器不能 5、在action的生命周期中,拦截器可以多次被调用,而过滤器只能在容器初始化时被调用一次 拦截器 :是在面向切面编程的就...转载 2018-03-03 13:10:56 · 295 阅读 · 0 评论