随笔分类 - java
关于java语言的博客
摘要:介绍 SPI是java提供的一种服务发现的标准,具体请看SPI介绍,但每次我们都需要自己创建services目录,以及配置文件,google的autoservice就可以帮我们省去这一步。 使用 maven的依赖 <dependency> <groupId>com.google.auto.servi
阅读全文
摘要:介绍 SPI全称Service Provider Interface,是Java提供的一套用来被第三方实现或者扩展的API,它可以用来启用框架扩展和替换组件。 使用 定义一个接口,可以飞的 public interface Flyable { void fly(); } 定义两个实现类,老鹰和鸽子
阅读全文
摘要:新特性介绍 java5是2004年9月份发布的,主要特性有泛型,枚举,可变参数,注解等。 泛型 先看一下泛型的简单使用 public class Client { public static void main(String[] args) { List<String> names = new Ar
阅读全文
摘要:使用 maven引入依赖 <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>1.16.14</version> </dependency> @Getter @Sette
阅读全文
摘要:使用 @Target(ElementType.TYPE) @Retention(RetentionPolicy.RUNTIME) public @interface Log { String value(); } Target是java中的源注解,标识注解的使用位置,如类,方法,参数,变量等。 Re
阅读全文
摘要:介绍 枚举是java5新增的特性,我们可以用来替代以前用常量完成的功能。java对枚举的支持还有EnumSet,EnumMap等工具类。 使用 public enum UserGenderEnum { MALE("0", "男"), FEMALE("1", "女"), NOT_KNOWN("2",
阅读全文
摘要:介绍 cfr是一个非常强大的java反编译器,支持java5,java8的新特性,如枚举,lambda表达式等。 下载 地址 下载下来是一个jar包,可以使用java命令来运行。 使用 public enum UserGenderEnum { MALE("0", "男"), FEMALE("1",
阅读全文
摘要:synchronized的3种用法 public class Client { public static void main(String[] args) { testSynchronized(); } private static void testSynchronized() { new Fo
阅读全文