随笔分类 - Java
摘要:深入理解JVM(八)一一 字符串常量池
阅读全文
摘要:### 参考以下文章 [Java单元测试对void方法的测试](https://www.ubiz.cc/default/3.html)
阅读全文
摘要:> [Java String replaceAll详解](https://www.cnblogs.com/firas/p/15562783.html) ### 示例 ```java // 测试用例 String str = "hello\\world/!"; System.out.println(s
阅读全文
摘要:1. Java字节码概述 1.1 Java开发过程 编写阶段:采用各种编辑工具,编写.java文件 编译阶段:采用javac.exe对.java文件编译,产生.class文件 运行阶段:采用java.exe加载.class文件运行 1.2 Class文件 1.2.1 class文件:字节码(byte
阅读全文
摘要:1. Java模块化概述 1.1 JDK8及以前开发模式 每个java文件被明确地放入到一个包中 java文件编译后的class文件,可以压缩为jar包,供别的程序调用 一个程序可以使用类库,类库通常以jar包呈现 将所有程序jar包,类库jar包,都放在classpath上,来运行程序 以jar为
阅读全文
摘要:1. 注解入门 1.1 Annotation 位于源码中(代码/注释/注解),使用其他工具进行处理的标签 注解用来修饰程序的元素,但不会对被修饰的对象有直接的影响 只有通过某种配套的工具才会对注解信息进行访问和处理 主要用途 提供信息给编译器/IDE工具 可用于其他工具来产生额外的代码/配置文件等
阅读全文
摘要:1. 代理模式和静态代理 1.1 代理模式 Proxy Pattern,23个经典模式的一种,又称委托模式 为目标对象提供(包装)了一个代理,这个代理可以控制对目标对象的访问 外界不用直接访问目标对象,而是访问代理对象,由代理对象再调用目标对象 代理对象中可以添加监控和审查处理 1.2 静态代理 J
阅读全文
摘要:1. 反射入门 1.1 反射 :reflection 程序可以访问、检测和修改它自身状态或行为的能力,即自描述和自控制 实现在运行时加载、探知和使用编译期间完全未知的类 基于反射自由创建对象 反射构建出无法直接访问的类 set或者get到无法访问的成员变量 调用不可访问的方法 实现通用的数组操作代码
阅读全文
摘要:1. 泛型入门 1.1 泛型 Generic Programming 泛型类:ArrayList, HashSet, HashMap等 泛型方法:Collections.binarySearch,Arrays.sort等 泛型接口:List, Iterator等 1.2 泛型的本质:参数化类型,避免
阅读全文
摘要:1. Lambda表达式 1.1 设计 面向过程语言 面向对象语言 函数式程序语言(传递方法/代码块)-- Java8开始,推出Lambda表达式实现 1.2 形式 参数,箭头,一个表达式 参数,箭头,{多个语句} 无参数,仅保留括号,箭头,表达式 一个参数,可省略括号,箭头,表达式 如果有返回值,
阅读全文
摘要:a sequence of elements from source that supports aggregate operations 1. 概述 流不存储元素,可以根据需要进行计算转换 pipelining:很多流的操作也是返回一个流 internal iteration:流操作进行迭代,用户
阅读全文
摘要:参考文档 Java 之泛型通配符 ? extends T 与 ? super T 解惑
阅读全文
摘要:static static意为静态的,但凡被static修饰说明属于类,不属于类的对象。 加载:static在类加载时初始化(加载)完成。 可修饰: 内部类 方法 成员变量 代码块 注意: static方法不能兼容this关键字。 你不能覆盖Java中的静态方法,因为方法覆盖基于运行时的动态绑定,静
阅读全文
摘要:参考文章 Java Annotation认知,包括框架图、详细介绍、示例说明
阅读全文
摘要:Java中有两种方式来提供比较功能。 Comparable 实现java.lang.Comparable接口,使你的类天生具有比较的能力,此接口很简单,只有一个compareTo方法。 此方法接收另一个Object为参数,如果当前对象小于参数则返回负值,如果相等则返回零,否则返回正值。 以x.com
阅读全文
摘要:使用方法 List<Integer> list = new ArrayList<Integer>() { { add(1); add(2); add(3); } }; list.stream().sorted().forEach(System.out::println); 参考文章 永远不要使用双花
阅读全文
摘要:Java中Comparable和Comparator区别小结 Comparable是排序接口,若一个类实现了该接口,代表该类支持排序,而Comparator是比较器接口,通过实现某个类的比较器来对该类进行排序。 Comparable相当于"内部比较器“,Comparator相当于"外部比较器"。
阅读全文
摘要:多进程和多线程简介 多进程概念 当前的操作系统都是多任务OS 每个独立执行的任务就是一个进程 多进程的优点 可以同时运行多个任务 程序因IO堵塞时,可以释放CPU,让CPU为其他程序服务 当系统有多个CPU时,可以为多个程序同时服务 多进程的缺点 太笨重,不好管理 太笨重,不好切换 多线程概念 一个
阅读全文