自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(27)
  • 收藏
  • 关注

原创 vue中通过props传值,一定是单向传值吗?如果是引用类型呢?

不一定,如果是基本数据类型,通过props传递的变量,数据是单向传递。如果是引用数据类型,如一个对象,则子组件修改值,不需要额外逻辑,也会影响到父组件的值。

2023-07-17 23:27:48 616

原创 OpenJDK基准测试工具-JMH相关的所有注解

【代码】OpenJDK基准测试工具-JMH相关的所有注解。

2023-07-16 23:07:58 379 1

原创 使用yield*和function*修改默认的对象(key-value)或数组遍历顺序

遍历顺序,根据bestPrice价格升序遍历。时,需要按照对象内某个键值对内的值进行遍历。

2023-07-16 16:08:24 236

原创 使用 vue3-tel-input电话组件时,为什么通过v-model绑定的默认值无效而 通过:value绑定有效?

绑定具有初始值的电话变量,但input框内显示的初始值为空?

2023-07-15 09:13:05 715

原创 Java线程池-ThreadPoolExecutor,Executors使用示例

1. Executors简单示例java提供了Executors线程池创建工具方便我们创建合适的线程池,示例如下,提供了四种创建线程池的简单方法,当然,其中有各自的优劣,之后 再叙述。//应用程序将根据需要自动创建线城池,并且有空闲线程存在时,不再创建新的线程,将重用该空闲线城池ExecutorService cachedThreadPool = Executors.newCachedThreadPool(); //创建并保持固定数量的线程池ExecutorService fixedThre

2021-04-07 22:41:38 689

原创 Java的volatile关键字及其示例

volatile 修饰的成员变量在每次被线程访问时,都强制从共享内存中重新读取该成员变量的值。而且,当成员变量发生变化时,会强制线程将变化值回写到共享内存。这样在任何时刻,两个不同的线程总是看到某个成员变量的同一个值。public class SynchronizedTest extends Thread{ public volatile static int i=0; // volatile修饰 @Override public void run() { // 重...

2020-07-08 12:47:34 231

原创 Java中 synchronized 修饰符及其示例

synchronized 关键字可用于声明方法,类和方法体,声明的目标同一时间只能被一个线程访问。 用法如下, 1. 修饰实例方法; 2.修饰类; 3. 修饰代码块; 4. 修饰静态方法。public class SynchronizedTest extends Thread{ public static int i; @Override public void run() { } ...

2020-07-07 22:56:27 866

原创 Spring 中@NonNull、@NonNullApi、@NonNullFields以及@Nullable注解及其示例

@NonNull,用于注解方法,参数以及变量,指示目标对象不能为null; @NonNullApi,包(Package)级别注解,指定参数和方法返回值默认不能为null; @NonNullFields,包(Package)级别注解,用于变量不能为null; @Nullable,可用于注解方法,参数以及变量,指定目标对象可以weinull,若是与@NonNullApi和@NonNullFields共用时,则会覆盖; 示例,Spring框架中Spring core...

2020-07-07 13:32:07 12896

原创 Java多线程-实现Callable接口的call()方法,示例

创建步骤,首先实现Callable接口的call()方法并指定返回值;然后创建实现类实例;FutureTask类使用Callable实现类的实例通过FutureTask的单参数构造器创建FutureTask的实例;通过Thread类的构造器创建Thread类实例,并执行start方法,启动线程;最后通过FutureTask实例的get()方法阻塞拿到Callable实现类的call方法的返回值。 示例如下,public class CallableTest implements Ca...

2020-07-06 09:40:03 6001

原创 Java多线程-继承Thread类,示例

继承Thread类,调用start方法启动线程。示例,public class ThreadTest extends Thread { public ThreadTest(String name){ super(name); } @Override public void run() { for (int i = 0; i<5 ; i++){ System.out.println("Thread-".

2020-07-05 14:22:45 2481

原创 Java多线程-实现Runnable接口run方法,示例

实现Runnable接口,并通过Thread类的构造器,创建线程。 示例如下public class ThreadTest implements Runnable{ @Override public void run() { for (int i = 0; i<5 ; i++){ System.out.println("Thread-"+Thread.currentThread().getName()+": "+i); ...

2020-07-05 13:00:05 883

原创 面向对象编程的四个基本特性(抽象、封装、继承及多态)以及示例

面向对象的四个基本特性是,抽象、封装、继承以及多态。1. 抽象 抽象就是忽略关注主题与当前目标无关的信息,以便更关注于与当前目标有关的信息。抽象并不打算了解全部问题,而只关注于主题相关性较大的部分,且暂时不用关注部分细节。 抽象包括两个方面,一是过程抽象,二是数据抽象。过程抽象,关注于目标的功能是什么,而不是功能是怎么实现的。数据抽象,关注于提取目标的特性信息。 举例,若是做一个学生信息管理系统,该系统的目标对象是学生,则需要对学生这个目标对象进行抽象。过程抽象,学...

2020-07-04 23:56:45 7789

原创 Java异常捕获(单级、多级)-try、catch、finally以及其执行顺序

当需要对发生异常(Exception)的情况进行记录或处理时,需要使用try/catch捕捉异常。1. 单级捕获 try 语句块中的staff为null,调用getAge方法时抛出NullPointerException,被catch语句捕捉,执行catch语句块内的打印逻辑。 @Test void nullPointExceptionTest(){ Staff staff = null; try{ staff....

2020-07-03 20:24:46 2181

原创 Java异常体系-Throwable、Error、Exception

1. 异常体系 Throwable类是java语言中所有Error类型与Exception类型的超类(superclass)

2020-07-03 19:41:57 971

原创 @FunctionalInterface注解以及测试示例

该注解用来注解函数接口。函数接口(Functional Intelface)是一个有且只有一个抽象方法的接口。1. 实例@FunctionalInterfaceinterface Student{ void study();}

2020-07-02 17:51:15 404

原创 Java虚拟机退出(Exit)的方法

1. System.exit()方法;2. Runtime.exit()方法和Runtime.halt方法。

2020-07-02 17:11:07 2923

原创 java静态方法(static method)与实例方法(instance method)

被static修饰的方法为静态方法,之外的方法为实例方法。静态方法可直接使用类调用,实例方法必须创建实例后才能调用。1. 示例 @Test void staticMethodTest(){ //直接调用静态方法 Boss.work(); //创建实例 Boss boss = new Boss(); //调用实例方法 boss.programming(); }cla...

2020-07-02 15:25:22 6631 1

原创 Java内存溢出之栈溢出-StackOverflowError

1. 产生的条件 1.1线程请求的栈深度大于虚拟机允许的最大深度 StackOverflowError 1.2虚拟机在扩展栈深度时,无法申请到足够的内存空间 OutOfMemoryError2. 示例 @Test void stackOutOfMemoryTest(){ getName("hello"); } private String getName(String name){ return getName(...

2020-07-01 22:15:18 402

原创 Optional类的map和flatMap的区别

1. 区别 map方法接受一个映射函数参数,返回一个被Optional包装的结果。若结果为空,则返回 空Optional。 flatMap方法接受一个返回值为Optional的映射函数参数,该返回值亦是flatMap方法的返回值。若结果为空,则返回 空Optional。2. 示例2.1 准备类 public class Staff { String name; Integer age; public Staff(){ ...

2020-07-01 21:41:39 5339

原创 Optional类的filter方法

filter方法可对Optional内对象进行过滤。1. 准备类 public class Staff { String name; Integer age; public Staff(){ } public Staff(String name, Integer age){ this.name = name; this.age = age; }..

2020-07-01 21:05:50 6304

原创 Optional类中的orElse和orElseGet的区别

1. orElse方法与orElseGet方法对比表Optional内对象 参数 效果 注释 null 对象 相同 orElse和orElseGet方法都会返回参数对象 不为null 对象 相同 返回Optional内对象 null 有返回值的函数 相同 orElse和orElseGet方法都会返回参数内函数返回值 不为null 有返回值的函数 不同 返回Optional内对象,..

2020-07-01 15:43:03 1991 1

原创 避免NPE问题的解决方案之一 --- Optional类

Optional类旨在解决NullPointException问题。Java 8 doc

2020-07-01 15:14:21 273

原创 java中的friendly类

类的访问修饰符有public,private,protected类。没有被以上修饰符修饰的类,被称为friendly类。

2020-06-30 19:40:40 4517

原创 Java的元注解

元注解用于注解其他注解。1. @Target注解。指定注解的作用域。用法为@Target(ElementType.Method)。 ElementType的枚举值有: CONSTRUCTOR: 描述构造器 FIELD: 描述成员变量 LOCAL_VARIABLE: 描述局部变量 METHOD: 描述方法 PACKAGE: 描述包 PARAMETER: 描述参数 TYPE: 描述类、接口(包括注解类型) 或enum声明2. @Retention注解。指定注解的...

2020-06-30 07:28:25 6406

原创 Java内置注解及其意义

Java内置注解定义在java.lang包下分别为:1. @Override注解。定义在方法上,限定重写父类方法,编译器会进行校验。2.@Deprecated注解。定义在方法上,指定方法已过期,可在java doc中告知替代方法。3. @SuppressWarnings注解。可定义在类、构造方法、方法、成员变量、局部变量以及方法参数上,忽略指定的警告。 关键字 用途 all to suppress all warni...

2020-06-30 06:52:31 216

原创 Java项目中的package-info.java的作用

1. 便于包级别(Package Level)的注解;2. 便于friendly类(default 访问修饰符)以及包内常量的集中定义管理;3. 便于包级别(Package Level)的注释说明;

2020-06-30 06:29:41 1205 2

原创 Aerospike(下一代NoSQL数据库)-从需求到安装

一、需求与场景 业务需要从数据库中获取产品的相关信息,搜索池为三张表总共670万行记录,所占空间为1.5g,键值集容量从200到2500之间分布,命中率为25%到80%,由于业务原因无法减少键值集,而公司内部规划没有采用分布式数据库架构。为减少搜索相关信息阶段的时间,需要将从MySQL等关系型数据库中的搜索压力转换到内存数据库。我们的业务场景需要NoSQL数据库在每个业务步骤进...

2020-03-14 21:14:22 399

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除