我之前的博客中说明过自己定义注解的声明今天我们来看看怎样对我们自己定义的注解进行使用. 1.我们在程序中使用我们的注解. 上一篇中我们自己定义了一个注解: @Target(ElementType.FIELD)//注解的作用范围.就是注解是用在什么地方的 @Retention(RetentionPolicy.RUNTIME)//注解的级别,就是注解能留存到什么时候 @Documented @Inherited public @interface MyAnnotation { public Stri…
之前的博客http://blog.csdn.net/u010590685/article/details/47029447介绍了java的注解的基本知识今天我们学习怎样使用自己定义注解. 首先我们要声明一个注解,声明代码例如以下: import java.lang.annotation.Documented; import java.lang.annotation.ElementType; import java.lang.annotation.Inherited; import java.la…
单例模式是设计模式中使用最为普遍的一种模式.属于对象创建模式,它可以确保系统中一个类只产生一个实例.这样的行为能带来两大好处: 对于频繁使用的对象,可以省略创建对象所花费的时间,这对于那些重量级对象而言,是非常可观的一笔系统开销. 由于new操作的次数减少,因而对系统内存的使用频率也会降低,这将减轻GC压力,缩短GC停顿时间. 在实际应用中,很多时候有一些对象我们只需要一个,例如:线程池(threadpool).缓存(cache).注册表(registry).日志对象等等,这个时候把它设计为单例…
前言 之前周会技术分享,一位同事讲解了HashMap的源码,涉及到一些常量设计的目的,本文将谈谈这些常量为何这样设计,希望大家有所收获. HashMap默认初始化大小为什么是1 << 4(16) /** * The default initial capacity - MUST be a power of two. */ static final int DEFAULT_INITIAL_CAPACITY = 1 << 4; HashMap默认初始化大小为什么是16,这里分两个维度分…
Java性能调优都是老生常谈的问题,特别当“糙快猛”的开发模式大行其道时,随着系统访问量的增加.代码的臃肿,各种性能问题便会层出不穷. 比如,下面这些典型的性能问题,你肯定或多或少都遇到过: 在进行性能测试时,接口响应时间长,吞吐量低: 在高并发下,JVM 中 Full GC 异常,JVM 堆内存溢出: 由于业务增长迅猛,大量读写操作单表单库,造成数据库死锁. 对于很多研发人员来说,Java性能调优都是很头疼的问题,那么 Java性能调优为什么不好掌握呢? Java 性能调优不是一门编程语言,无…
解析注解 Java 5开始,java.lang.reflect包下的反射API可以在运行时读取Annotation. 应用:定义一个自动执行方法的注解,解析注解.通过反射执行方法,替代配置文件. package ah.annotation; import java.lang.annotation.ElementType; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; impo…
常用注解: 自定义注解,标准格式: 1,target:注解作用域 2,Retention:声明周期 运行子类继承,但是子类继承只能作用到类注解,字段注解,是继承不了的. 使用注解:通过下面这种方式,为注解的成员赋值,使用的时候会通过成员名,找到这些值,去使用这些值. 如果注解只有一共成员,该成员必须命名为value,这样使用注解的时候方便:如:@注解(“值1”),相当于@注解(value=“值1”): 解析注解: 解析注解主要用到反射的方式,在下面的例子中可以看到. 主要代码如下: //1,获取…
注解 ---- 英文:annotation 1.注解长什么样子? @xxxxxxx( 一些信息 ) ----- 这个信息可有可无 2.注解可以放在什么地方? 类本身的上面.属性的上面.方法的上面.参数的前面 3.注解的作用是什么? 1.用来标识一个事物( 方法.属性.参数...)有特殊的含义 2.用来消灭配置文件 详细点就是这样的: 1).用来充当注释的作用,仅仅相当于是一个文字的说明 如:@Deprecated        ---- 表示该方法是废弃的 2).用来做代码的检测 如:@over…
注解切面解析 注解切面解析器 /** * 注解切面解析器 */ public class BeanFactoryAspectJAdvisorsBuilder { /** * Bean 工厂 */ private final ListableBeanFactory beanFactory; /** * 生成 Advisor 的工厂 */ private final AspectJAdvisorFactory advisorFactory; /** * 切面 Bean 名称 */ @Nullable…
转:http://blog.csdn.net/briblue/article/details/73824058 文章开头先引入一处图片.  这处图片引自老罗的博客.为了避免不必要的麻烦,首先声明我个人比较尊敬老罗的.至于为什么放这张图,自然是为本篇博文服务,接下来我自会说明.好了,可以开始今天的博文了. Annotation 中文译过来就是注解.标释的意思,在 Java 中注解是一个很重要的知识点,但经常还是有点让新手不容易理解. 我个人认为,比较糟糕的技术文档主要特征之一就是:用专业名词来介绍…