- 浏览: 265281 次
- 性别:
- 来自: 上海
-
文章分类
- 全部博客 (298)
- 工作感悟 (6)
- java基础 (23)
- 计算机硬件知识 (1)
- 计算机网络知识 (2)
- Struts (3)
- Srping (4)
- hibernate (0)
- ibatis (0)
- webservice (4)
- Thread (22)
- maven (5)
- ubuntu/linux/centos/redhat (46)
- SSO (1)
- ESB (0)
- 工作流 (0)
- oracle (15)
- 云计算 (1)
- hadoop (1)
- nosql (0)
- mysql (3)
- sqlserver (0)
- jquery (0)
- 分布式 (3)
- 集群 (0)
- 设计模式 (2)
- EJB (0)
- map (0)
- cache (5)
- Niginx+varnish+squid+Ats (14)
- Apache (0)
- 工作/职业规划 (0)
- Scala & Groovy (1)
- English (4)
- 数据结构/算法 (6)
- 开发工具 (5)
- 测试 (2)
- Exception (0)
- 定时器 (3)
- j2ee (2)
- 部署 (1)
- Openssl (1)
- 操作系统 (3)
- kvm (13)
- libvirt (5)
- PostgreSql (5)
- 虚拟化 (3)
- 概念理解 (1)
- virt-manager (1)
- RESTful (3)
- 其它 (4)
- ssh2 (14)
- windows (1)
- 房产 (2)
- svn (1)
- 手机 (1)
- ant (1)
- flume (2)
- sqoop (1)
- fastdfs (5)
- log4j (1)
- SPDY (1)
- mongodb (2)
- MQ (2)
- Mina (1)
- dubbo (4)
- PMP (1)
- Webshpere (2)
- jvm (1)
- Btrace (1)
- zookeeper (7)
- UML (1)
- spring cloud (6)
- spring boot (5)
- storm (0)
- 软件管理 (1)
- elasticsearch (1)
- 协议 (2)
- docker (1)
- 性能 (2)
- 安全 (1)
- 代码规范 (1)
- mqtt (1)
- lombok (1)
- 车联网 (1)
- kafka (1)
最新评论
JDK 5.0 以后增加了注解。就是@后面加一个名称。有其自身的含意。跟C#里的Attributes似的。
Java并发编程中,用到了一些专门为并发编程准备的 Annotation。
主要包括三类:
1、类 Annotation(注解)
就像名字一样,这些注解是针对类的。主有要以下三个:
@Immutable
@ThreadSafe
@NotThreadSafe
@ThreadSafe 是表示这个类是线程安全的。具体是否真安全,那要看实现者怎么实现的了,反正打上这个标签只是表示一下。不线程安全的类打上这个注解也没事儿。
@Immutable 表示,类是不可变的,包含了 @ThreadSafe 的意思。
@NotThreadSafe 表示这个类不是线程安全的。如果是线程安全的非要打上这个注解,那也不会报错。
这三个注解,对用户和维护者是有益的,用户可以立即看出来这个类是否是线程安全的,维护者则是可以根据这个注解,重点检查线程安全方面。另外,代码分析工具可能会利用这个注解。
2、域 Annotation(注解)
域注解是对类里面成员变量加的注解。
3、方法 Annotation(注解)
方法注解是对类里面方法加的注解。
域注解和方法注解都是用@GuardedBy( lock )来标识。里面的Lock是告诉维护者:这个状态变量,这个方法被哪个锁保护着。这样可以强烈的提示类的维护者注意这里。
@GuardedBy( lock )有以下几种使用形式:
1、@GuardedBy( "this" ) 受对象内部锁保护
2、@GuardedBy( "fieldName" ) 受 与fieldName引用相关联的锁 保护。
3、@GuardedBy( "ClassName.fieldName" ) 受 一个类的静态field的锁 保存。
4、@GuardedBy( "methodName()" ) 锁对象是 methodName() 方法的返值,受这个锁保护。
5、@GuardedBy( "ClassName.class" ) 受 ClassName类的直接锁对象保护。而不是这个类的某个实例的锁对象。
Java并发编程中,用到了一些专门为并发编程准备的 Annotation。
主要包括三类:
1、类 Annotation(注解)
就像名字一样,这些注解是针对类的。主有要以下三个:
@Immutable
@ThreadSafe
@NotThreadSafe
@ThreadSafe 是表示这个类是线程安全的。具体是否真安全,那要看实现者怎么实现的了,反正打上这个标签只是表示一下。不线程安全的类打上这个注解也没事儿。
@Immutable 表示,类是不可变的,包含了 @ThreadSafe 的意思。
@NotThreadSafe 表示这个类不是线程安全的。如果是线程安全的非要打上这个注解,那也不会报错。
这三个注解,对用户和维护者是有益的,用户可以立即看出来这个类是否是线程安全的,维护者则是可以根据这个注解,重点检查线程安全方面。另外,代码分析工具可能会利用这个注解。
2、域 Annotation(注解)
域注解是对类里面成员变量加的注解。
3、方法 Annotation(注解)
方法注解是对类里面方法加的注解。
域注解和方法注解都是用@GuardedBy( lock )来标识。里面的Lock是告诉维护者:这个状态变量,这个方法被哪个锁保护着。这样可以强烈的提示类的维护者注意这里。
@GuardedBy( lock )有以下几种使用形式:
1、@GuardedBy( "this" ) 受对象内部锁保护
2、@GuardedBy( "fieldName" ) 受 与fieldName引用相关联的锁 保护。
3、@GuardedBy( "ClassName.fieldName" ) 受 一个类的静态field的锁 保存。
4、@GuardedBy( "methodName()" ) 锁对象是 methodName() 方法的返值,受这个锁保护。
5、@GuardedBy( "ClassName.class" ) 受 ClassName类的直接锁对象保护。而不是这个类的某个实例的锁对象。
发表评论
-
SequenceInputStream 合并流与切割流
2017-09-27 15:06 431将多个流合并成一个流 SequenceInputStrea ... -
java io 之管道(PipedOutputStream和PipedInputStream)的简介,源码分析和示例
2017-09-27 10:39 299java 管道介绍 在java中, ... -
Java通过Executors提供四种线程池
2017-09-27 10:21 468Java通过Executors提供四种线程池,分别为: new ... -
url参数中出现+、空格、=、%、&、#等字符的解决办法
2017-03-08 15:31 596url出现了有+,空格,/,?,%,#,&,=等特殊符 ... -
Eclipse远程调试之Socket Attach与Socket Listen
2014-08-21 13:52 1691打个比方,被远程debug/监视 的进程就是一个风度翩翩的美少 ... -
关于java用jni调用 dll动态库Can't find dependent libraries错误的解决
2014-08-21 08:56 12311.package com.bsp.zauto.commo ... -
java 远程调试备忘
2013-12-11 16:45 874远程调试java程序 http://hi.baidu.com ... -
[转贴]System.getProperty()参数大全
2013-11-20 15:39 494一直做Web应用一般不会用到这些东西,今天在搞一个代码生成器的 ... -
Java Daemon线程
2013-09-05 13:27 617所谓守护线程就是运行 ... -
DelayQueue队列研究
2013-08-07 15:40 6731.DelayQueue 是一个无界的BlockingQue ... -
java 原语
2013-07-18 13:20 1185介绍 操作系统用语范畴 ... -
精巧好用的DelayQueue
2013-07-03 11:13 666我们谈一下实际的场景吧。我们在开发中,有如下场景 a) 关闭 ... -
log4j的配置文件备份.[成功测试]
2013-06-25 14:29 9411.在项目的config目录下,新建配置文件 log4j.xm ... -
log4j的xml配置详细
2013-06-24 13:48 617这是log4j默认的配置,我们先熟悉一下 <!-- ... -
java用log4j记录日志的基本方法
2013-06-24 10:57 587Log4j基本使用方法 Log4j由三个重要的组件构成: ... -
java 堆 栈
2013-06-21 16:53 604由String看Java堆栈问题,包括==以及equal()。 ... -
Java ThreadPoolExecutor思想介绍
2013-06-14 16:31 599一、简介 线程池类为 j ... -
JDK线程池的ThreadFactory
2013-06-14 16:10 799JDK线程池:Executors.newFixedThread ... -
java 中到底什么叫闭包
2013-03-26 13:24 1230什么是闭包 闭包的 ... -
java中的标签
2013-03-20 14:46 789Java中为了使程序结构更 ...
相关推荐
首先,我们要理解注解(Annotation)在Java中的作用。注解是元数据的一种形式,它可以提供额外的信息给编译器、虚拟机或者其他的工具。在处理Excel时,注解可以用来标记方法,指示这些方法应如何与Excel工作,比如...
Java Annotation 是 JDK5.0 引入的一种元数据机制,它允许程序员在代码中嵌入额外的信息,这些信息可以被编译器、构建工具或运行时系统用来执行特定的任务。Annotation 提供了一种安全、灵活的方式来描述代码的属性...
Java注解(Annotation)是Java语言的一个重要特性,它为元数据提供了强大的支持。元数据是关于数据的数据,可以用来提供额外的信息,如代码的解释、编译时或运行时的处理指令等。注解在Java中扮演着代码文档、编译器...
Java 注解(Annotation)是 Java 语言中的一个重要特性,它为程序员提供了元数据,即关于数据的数据。在本文中,我们将深入理解 Java 注解的基本概念、用途、工作方式以及如何使用它们。 首先,让我们了解为什么...
文件名`java_demo_synchronized`可能包含的是关于Java同步锁的示例代码,可以从中学习如何在实际项目中应用同步锁策略。通过深入理解同步锁的工作原理和优化技巧,我们可以构建出高效、高并发的Spring Boot应用程序...
import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; @Component public class DatabaseSyncService { @Scheduled(fixedRate = 60000) // 每分钟...
在这个场景中,“ssh2 annotation”可能指的是使用SSH2协议并结合Java注解(Annotation)来配置和管理应用程序。在Java中,注解是一种元数据,可以提供编译器或运行时系统使用的信息,简化代码并减少配置文件的需求...
九、Java注解(Annotation) 注解是元数据的一种形式,提供了一种安全地与代码关联信息的方式,可以用于编译时检查或运行时处理。 通过阅读这份"Java学习基础笔记+代码注解",你可以逐步掌握上述知识点,并通过实践...
Java 注解(Annotation)又称 Java 标注,是 JDK5.0 引入的一种注释机制。 Java 语言中的类、方法、变量、参数和包等都可以被标注。Java标注可以通过反射获取标注内容。在编译器生成类文件时,标注可以被嵌入到字节...
`AnnotationProcessor`的优势在于,它可以减少手动编写重复代码的工作量,同时确保生成的代码与原始注解保持同步。这使得代码更整洁,更易于维护,因为所有自动生成的部分都由编译器处理,而不是散落在项目的各个...
Spring Boot作为Java领域的一个热门微服务框架,提供了强大的定时任务功能,能够帮助我们实现不同数据库间的数据同步,比如Oracle到MySQL。本篇文章将详细讲解如何利用Spring Boot的定时任务特性,结合Java的相关...
注解(Annotation)是Java提供的一种元编程机制,允许在源代码中嵌入额外的信息,这些信息可以被编译器或运行时系统用来验证代码或者执行特定的处理。在Android中,我们可以通过使用注解处理器(Annotation ...
10. **注解(Annotation)**:学习自定义注解和元注解,了解它们在代码中的应用,如Spring框架中的注解。 11. **Java IO/NIO**:深入理解流的分类,学习非阻塞I/O模型NIO(New Input/Output)。 12. **Java 8及更...
本文将基于"java经验积累"这一主题,深入探讨Java的相关知识点,包括类加载器、并发处理、注解(Annotation)、线程池、泛型、自定义注解以及Java与模式思考。 首先,我们来关注"深入探讨 Java 类加载器"。Java的类...
13. **Java注解(Annotation)**:注解是一种元数据,可以提供编译时和运行时的信息,用于代码的自解释、编译时验证、运行时处理等。 14. **Java标准库API**:Java API包含了大量预定义的类和方法,如集合、I/O、...
11. **Java的注解(Annotation)**:注解是Java 5引入的元数据,用于提供编译器或运行时系统的信息。书中会介绍预定义的注解以及自定义注解的创建。 12. **JDBC与数据库连接**:Java数据库连接(JDBC)是Java访问...
十、Java注解(Annotation) 注解提供了一种元数据的方式,可以向编译器或JVM提供有关代码的额外信息,例如用于代码生成、验证或部署。 十一、模块系统(Java 9+) Java 9引入了模块系统(Project Jigsaw),提高了...
7. 注解(Annotation)和泛型的深入讲解,涵盖自定义注解的创建与应用,以及泛型的高级特性。 8. Java 8及后续版本中的函数式编程特性,如Lambda表达式、Stream API等。 9. Java的类加载机制,包括类加载过程、...
【JAVA注解(Annotation)】 JAVA注解是一种元数据,提供了一种安全的方式,将信息附加到代码中,而不影响其运行时行为。注解可以用于编译器检查、运行时处理、文档生成等多种用途。 这些课件将涵盖JAVA语言的基础...
最后,注解(Annotation)是Java 5引入的元数据,提供了向编译器、JVM或工具提供信息的方法。它们可以用于配置框架、进行编译时和运行时的验证、记录代码信息等。常见的注解有@Override、@Deprecated、@ ...