摘要: 阅读全文
posted @ 2022-05-30 22:13 timberwang 阅读(36) 评论(0) 推荐(0)
摘要: String 真正不可变有下面几点原因: 保存字符串的数组被 final 修饰且为私有的,并且String 类没有提供/暴露修改这个字符串的方法。 String 类被 final 修饰导致其不能被继承,进而避免了子类破坏 String 不可变。 public final class String i 阅读全文
posted @ 2022-03-21 15:14 timberwang 阅读(880) 评论(0) 推荐(0)
摘要: 为什么不重写hashcode方法会造成两个对象值相等,但是hashcode不同的原因 在没有重写的情况下,我们调用的是Object中的hashcode()方法。 ​ 下图是官方注释中的介绍。 public native int hashCode(); 意思也就是说在不重写hashcode()时,返回 阅读全文
posted @ 2022-03-21 13:43 timberwang 阅读(599) 评论(0) 推荐(0)
摘要: 1. 导入相关依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-mail</artifactId> <version>2.6.3</version> </depend 阅读全文
posted @ 2022-03-20 01:26 timberwang 阅读(164) 评论(0) 推荐(0)
摘要: 首先说一下什么是引用拷贝和对象拷贝。 1. 引用拷贝: ​ 引用拷贝就是创建一个指向对象的引用变量的拷贝,拷贝后生成的对象和原来的对象仍是一个对象,也就是说他们在内存空间中的地址是一样的。 2. 对象拷贝 ​ 对象拷贝就是创建对象本身的一个副本,就是在内存空间中开辟一个新的区域存放该对象,这时候就是 阅读全文
posted @ 2022-03-16 15:56 timberwang 阅读(209) 评论(0) 推荐(0)
摘要: java中单例模式是一种常见的设计模式,单例模式的写法有好几种,这里主要介绍两种:懒汉式单例和饿汉式单例。 单例模式有以下特点: 1、单例类只能有一个实例。 2、单例类必须自己创建自己的唯一实例。 3、单例类必须给所有其他对象提供这一实例。 单例模式确保某个类只有一个实例,而且自行实例化并向整个系统 阅读全文
posted @ 2022-03-14 15:09 timberwang 阅读(305) 评论(0) 推荐(0)
摘要: 三大方法 //Executors.newCachedThreadPool(); 可伸缩的,遇强则强,遇弱则弱 public static ExecutorService newCachedThreadPool() { return new ThreadPoolExecutor(0, Integer. 阅读全文
posted @ 2022-03-13 16:51 timberwang 阅读(37) 评论(0) 推荐(0)
摘要: java抽象类的构造方法和普通类的构造方法一样,都是用来初始化类,只是抽象类的构造方法不能直接调用。因为抽象类不能实例化,但是一旦一个普通类继承了抽象类 便也可以在构造函数中调用其抽象类的构造函数,也可以使用其方法。可以这么理解吧,抽象类就是一个不能实例化的不同类,不过如果方法加了abstract, 阅读全文
posted @ 2022-02-28 21:11 timberwang 阅读(1214) 评论(0) 推荐(1)
摘要: 请注明出处:http://blog.csdn.net/qq_23179075/article/details/78753136 Java中Collections.sort()的使用! 在日常开发中,很多时候都需要对一些数据进行排序的操作。然而那些数据一般都是放在一个集合中如:Map ,Set ,Li 阅读全文
posted @ 2022-02-28 20:49 timberwang 阅读(251) 评论(0) 推荐(0)
摘要: 通常我们实现两个变量交换的方法是新定义一个中间量,但是在交换数字或字符常量时,我们可以采用异或的方法来进行交换。 a = a^b; b = a^b; a = a^b; 首先用a保存了a^b的 值,再用b = a ^ b = (a^b)^b=a^b^b=a^(b^b)=a^0=a,这样就成功的实现了b 阅读全文
posted @ 2022-02-26 00:05 timberwang 阅读(114) 评论(0) 推荐(0)