Java
李思净
这个作者很懒,什么都没留下…
展开
-
Java开发规范-编程规范之OOP规约
Java编程规约(OOP规约)内容源自阿里巴巴Java开发手册(华山版)【强制】 避免通过一个类的对象引用访问此类的静态变量或静态方法,无谓增加编译器解析成本,直接用"类名."形式来访问即可。【强制】 所有的覆写方法,必须加@Override注解。【强制】 相同参数类型,相同业务含义,才可以使用Java的可变参数,避免使用Object。(提倡尽量不用可变参数编程)【强制】 外部正在...原创 2020-03-04 19:29:15 · 125 阅读 · 0 评论 -
Java开发规范-编程规范之常量定义
Java编程规约(常量定义)内容源自阿里巴巴Java开发手册(华山版)【强制】 不允许任何魔法值(即未经预先定义的常量)直接出现在代码中。【反例】:String key = “Id#taobao_” + tradeId; cache.put(key, value); // 缓存get时,由于在代码复制时,容易漏掉下划线,导致缓存击穿而出现问题【强制】在long或者Long赋值时...原创 2020-03-03 20:48:46 · 401 阅读 · 0 评论 -
Base64 编码与解码工具类
Base64 编码与解码Base64是网络上最常见的用于传输8Bit字节码的编码方式之一,Base64就是一种基于64个可打印字符来表示二进制数据的方法。Base64编码是从二进制到字符的过程,可用于在HTTP环境下传递较长的标识信息。采用Base64编码具有不可读性,需要解码后才能阅读。使用Java进行Base64编码和解码import java.util.Base64;/** ...原创 2020-03-03 20:31:49 · 1641 阅读 · 0 评论 -
Java开发规范-编程规范之代码格式
Java编程规约(代码格式)内容源自阿里巴巴Java开发手册(华山版)【强制】如果是大括号内为空,则简洁地写成{}即可,大括号中间无需换行和空格;if(){} // 大括号中间无需空格和换行【强制】如果是非空代码块则:1. 左大括号前不换行。2. 左大括号后换行。3. 右大括号前换行。4. 右大括号后还有else等代码则不换行;表示终止的右大括号后必须换行。if () { ...原创 2020-02-27 17:36:37 · 278 阅读 · 0 评论 -
Java开发规范-编程规范之命名风格
摘自阿里巴巴Java开发手册(阿里巴巴华山版)原创 2020-02-19 14:45:23 · 228 阅读 · 0 评论 -
Java基础-StringBuilder
StringBuilderStringBuilder APIModifier and TypeMethod and DescriptionStringBuilderappend(boolean b) 将 boolean参数的字符串表示附加到序列中。StringBuilderappend(char c) 将 char参数的字符串表示附加到此序列。StringB...原创 2019-11-06 21:21:43 · 137 阅读 · 0 评论 -
Java基础-StringBuffer
StringBufferStringBuffer APIModifier and TypeMethod and DescriptionStringBufferappend(boolean b) 将 boolean参数的字符串表示附加到序列中。StringBufferappend(char c) 将 char参数的字符串表示附加到此序列。StringBuffe...原创 2019-11-06 21:21:08 · 117 阅读 · 0 评论 -
Java基础-String
StringString APIModifier and TypeMethod and DescriptioncharcharAt(int index) 返回 char指定索引处的值。intcodePointAt(int index) 返回指定索引处的字符(Unicode代码点)。intcodePointBefore(int index) 返回指定索...原创 2019-11-06 21:20:31 · 149 阅读 · 0 评论 -
Java基础-集合框架-Map-HashTable API及常用方法
HashTableHashTable APIModifier and TypeMethod and Descriptionvoidclear() 清除此HashTable中的所有元素。Objectclone() 创建此HashTable的浅拷贝。Vcompute(K key, BiFunction<? super K,? super V,? exte...原创 2019-11-06 21:19:57 · 317 阅读 · 0 评论 -
Java基础-集合框架-Map-TreeMap API及常用方法
TreeMapTreeMap APIModifier and TypeMethod and DescriptionMap.Entry<K,V>ceilingEntry(K key) 返回大于等于key的最小值的元素,如果没有,则返回nullKceilingKey(K key) 返回大于等于key的最小值的元素的key,如果没有,则返回null...原创 2019-11-06 21:19:04 · 1072 阅读 · 0 评论 -
Java基础-集合框架-Map-HashMap API及常用方法
HashMapHashMap APIModifier and TypeMethod and Descriptionvoidclear() 清除HashMap中的所有元素。Objectclone() 返回此HashMap中的浅拷贝:其内元素不会被拷贝。Vcompute(K key, BiFunction<? super K,? super V,? ...原创 2019-11-05 17:13:14 · 555 阅读 · 0 评论 -
MD5加密工具类
MD5信息摘要算法(MD5 Message-Digest Algorithm)MD5信息摘要算法(MD5 Message-Digest Algorithm),一种被广泛使用的密码散列函数,可以产生出一个128位(16字节)的散列值(hash value),用于确保信息传输完整一致。MD5由美国密码学家罗纳德·李维斯特(Ronald Linn Rivest)设计,于1992年公开,用以取代MD4算...原创 2019-11-04 16:04:04 · 430 阅读 · 0 评论 -
Java基础-集合框架-Collection-Set-TreeSet API及常用方法
TreeSetTreeSet APIModifier and TypeMethodDescriptionbooleanadd(E e)将指定的元素添加到此集合(如果尚未存在)。booleanaddAll(Collection<? extends E> c)将指定集合中的所有元素添加到此集合中。Eceiling(E e)返回此集合中最小元...原创 2019-10-31 17:09:37 · 294 阅读 · 0 评论 -
Java基础-集合框架-Collection-Set-HashSet API及常用方法
HashSetHashSet APIModifier and TypeMethodDescriptionbooleanadd(E e)将指定的元素添加到此集合(如果尚未存在)。voidclear()从此集合中删除所有元素。Objectclone()返回此 HashSet实例的浅层副本:元素本身不被克隆。booleancontains(Obj...原创 2019-10-30 17:54:02 · 146 阅读 · 0 评论 -
Java基础-集合框架-Collection-List-Vector API及常用方法
VectorVector APIModifier and TypeMethodDescriptionbooleanadd(E e)将指定的元素追加到此Vector的末尾。voidadd(int index, E element)在此Vector中的指定位置插入指定的元素。booleanaddAll(Collection<? extends E&...原创 2019-10-30 16:20:46 · 199 阅读 · 0 评论 -
Java基础-集合框架-Collection-List-LinkedList API及常用方法
LinkedListLinkedList APIModifier and TypeMethodDescriptionbooleanadd(E e)将指定的元素追加到此列表的末尾。voidadd(int index, E element)在此列表中的指定位置插入指定的元素。booleanaddAll(Collection<? extends E&...原创 2019-10-30 14:54:03 · 170 阅读 · 0 评论 -
Java基础-集合框架-Collection-List-ArrayList API及常用方法
ArrayListArrayList APIModifier and TypeMethodDescriptionbooleanadd(E e)将指定元素添加到此列表的队尾voidadd(int index, E element)将指定元素添加到此列表的指定位置。booleanaddAll(Collection<? extends E> c...原创 2019-10-29 15:26:17 · 140 阅读 · 0 评论 -
Java-基础-反射
反射JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意方法和属性;这种动态获取信息以及动态调用对象方法的功能称为java语言的反射机制。反射机制相关类类名用途Class类代表类的实体,java运行中的类或接口Field类类中的字段Mehtod类类中的方法Constructor类类...原创 2019-10-29 15:09:54 · 64 阅读 · 0 评论 -
Java基础-反射-Class
class 类class(包括interface)的本质是就是一种数据类型(Type),class是由JVM在执行过程中动态加载的。JVM在第一次读取到某种class类型时,将其加载进内存。每加载一种class,JVM就创建一个对应Class类型的实例,并关联起来。以String类为例,当JVM加载String类时,它首先读取String.class文件到内存,然后,为String类创建一个...原创 2019-10-29 15:08:30 · 228 阅读 · 0 评论 -
JavaDoc 使用详解
概述JavaDoc主要用于描述类、方法的功能及目的。官网地址https://docs.oracle.com/javase/7/docs/technotes/tools/windows/javadoc.htmlJavaDoc注解(由JDK定义) - 类写在类上的文档标注一般分为三段:第一段:概要描述,通常用一句或者一段话简要描述该类的作用,以英文句号作为结束第二段:详细描述,通常用一...原创 2019-10-21 17:07:15 · 1705 阅读 · 0 评论 -
equals() hashCode()的比较
equals() hashCode()equals()equals()默认比较引用地址,重写equals()可实现判断对象内同是否相等,一般用于集合元素的比较,避免重复插入。equals() 必须满足的条件equals()方法要求我们必须满足以下条件:自反性(Reflexive):对于非null的x来说,x.equals(x)必须返回true;对称性(Symmetric):对于非nu...原创 2019-10-17 17:24:39 · 234 阅读 · 0 评论 -
BigDecimal
BigDecimalBigDecimal概述组成对小数位进行操作运算比较两个BigDecimal的大小BigDecimal概述和BigInteger类似,BigDecimal可以表示一个任意大小且精度完全准确的浮点数。 /** * @Description: 创建一个BigDecimal实例 * * @return BigDecimal * @param num * ...原创 2019-10-15 17:07:39 · 118 阅读 · 0 评论 -
BigInteger
BigInteger概述在Java中,由CPU原生提供的整型最大范围是64位long型整数。使用long型整数可以直接通过CPU指令进行计算,速度非常快。如果我们使用的整数范围超过了long型就只能用软件来模拟一个大整数。java.math.BigInteger就是用来表示任意大小的整数。BigInteger内部用一个int[]数组来模拟一个非常大的整数。优点:数值没有范围限制缺点:...原创 2019-10-15 16:37:35 · 969 阅读 · 0 评论 -
Java 读取本地文件内容
Java 读取本地文件内容public static String readFileContent(String fileName) { File file = new File(fileName); BufferedReader reader = null; StringBuffer sbf = new StringBuffer(); try { ...原创 2019-10-15 15:28:47 · 972 阅读 · 0 评论 -
json字符串与java对象的相互转换(jackson)
json字符串与java对象的相互转换(jackson)pom <!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-databind --> <dependency> <groupId>com.fasterxml.jackson.core</g...原创 2019-10-14 14:30:06 · 254 阅读 · 0 评论 -
Java基础-集合框架
集合框架框架图CollectionListSetQueueMapHashMapHashTable框架图CollectionCollection:采用线性列表的方式存储,长度可动态改变。List:记录元素插入顺序,允许存在重复元素。ArrayList:使用动态数组方式存储元素,支持随机读取,适合做查询操作,是线程不安全的。Vector:是ArrayList线程安全的实现。因为是线...原创 2019-08-10 16:13:50 · 182 阅读 · 0 评论 -
Java基础-Byte类源码
package java.lang;public final class Byte extends Number implements Comparable<Byte> { // 定义Byte对象的最小值:-128 public static final byte MIN_VALUE = -128; // 定义Byte对象的最大值:127 p...原创 2019-08-15 09:46:24 · 234 阅读 · 0 评论 -
Java基础-Short类源码
package java.lang;public final class Short extends Number implements Comparable<Short> { // short 最小值 public static final short MIN_VALUE = -32768; // short 最大值 public sta...原创 2019-08-15 10:25:06 · 211 阅读 · 0 评论 -
Java基础-8种基本数据类型及其物理实现
基本数据类型8种基本数据类型bye,short、int、long取值范围计算方法为什么要使用补码进行表示?取值范围计算char取值范围double和float取值范围计算IEEE754浮点数表示法float8种基本数据类型类型占用空间大小取值范围默认值表示方式用途byte8位 - 1字节127 - (-128)0有符号的,以二进制补码表示的整数用在大型数组...原创 2019-08-12 13:54:28 · 686 阅读 · 0 评论 -
Java基础-Boolean类源码
package java.lang;public final class Boolean implements java.io.Serializable, Comparable<Boolean>{ // Boolean的true值 public static final Boolean TRU...原创 2019-08-16 17:18:12 · 234 阅读 · 1 评论 -
Java基础-类和对象
概述Java作为一种面对对象语言,支持以下基本概念:类对象属性方法封装继承多态重载抽象类和对象类:对一类事物的统称,即一个模板,如有一个类代表狗。对象:是类的一个实例,指某一特定事务,如有一条叫小白的狗。属性和方法属性:用于描述对象的状态(我是谁)。方法:用于确定对象的行为(我可以做什么)。如下所示:String name、int age、Stri...原创 2019-08-13 10:02:20 · 95 阅读 · 0 评论 -
Java基础-final
final关键字表示的不可变的,用于修饰类、方法、属性。final修饰类:修饰类当用final去修饰一个类的时候,表示这个类不可被继承。因为final修饰的类不可被继承,所以其中的方式被隐式指定为final方法。一般将工具类设置为final。final修饰方法:被final修饰的方法子类不能重写。提高程序执行的效率:将一个方法设成final后,编译器就会忽略为执行方法调用机制...原创 2019-08-13 10:39:54 · 107 阅读 · 0 评论 -
Java基础-Set接口源码
package java.util;public interface Set<E> extends Collection<E> { // Query Operations /** * 返回集合中元素的数量,若大于Interger的最大值,则返回Interger的最大值。 */ int size(); /** ...原创 2019-08-17 14:14:03 · 137 阅读 · 0 评论 -
Java基础-抽象类与接口的含义与差别
抽象类抽象类是从一些类中抽取出它们共有的属性(例如某些相同的成员变量、属性相同(修饰符、函数名、参数类型、参数个数)的方法)。抽象类注重于对类本身的抽象,抽象方法没有方法体,仅仅是声明了该方法,让继承它的子类去实现。抽象方法只作声明,而不包含实现,即没有方法体。抽象类不能被实例化。抽象类可以有抽象属性和抽象方法,若含有抽象方法,该类必须声明为抽象类。子类必须重写抽象类中的...原创 2019-08-17 16:17:18 · 85 阅读 · 0 评论 -
Java基础-枚举类型enum
枚举概述枚举类型是Java 5中新增特性的一部分,它是一种特殊的数据类型,之所以特殊是因为它既是一种类却又比普通类多了些特殊的约束,但是这些约束的存在也造就了枚举类型的简洁性、安全性以及便捷性。枚举类型的定义没有枚举类型时定义常量常见的方式:public class DayDemo { public static final int MONDAY =1; public ...原创 2019-08-14 16:05:34 · 167 阅读 · 0 评论