自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Android Studio JSONObject取值问题

JSONObject.getString("key"):当对象中没有key对应的value时,会抛出No value for "key"的异常;如有循环,会打断循环。JSONObject.optString("key"):当对象中没有key对应的value时,不会抛出异常。

2022-04-10 11:07:25 2470 1

原创 Redis 缓存雪崩、缓存穿透、缓存击穿区别

缓存雪崩:同一时间大量key失效,导致大量请求直接到数据库,导致数据库挂掉。 解决措施:设置缓存的时候随机初始化失效时间,避免集体失效。 缓存穿透:缓存和数据库都没有的数据,导致大量请求穿透缓存到数据库,导致数据库挂掉。 解决措施:接口层设置校验、使用布隆过滤器(拦截集合中本来就不存在的数据) 缓存击穿:同一时间某一个热点key失效,导致大量请求直接到数据库,导致数据库挂掉。 解决措施:采用分布式锁 个人理解有限,如有错或遗漏请指正!!! ...

2022-02-21 21:14:22 768

原创 面试题 进程与线程的关系、区别

进程:是程序的一次执行过程,是系统运行程序的基本单位。 线程:线程是一个比进程更小的执行单位。每个线程有自己的程序计数器、虚拟机栈和本地方法栈,同类的多个线程共享进程的堆和方法区资源。(参考Java内存区域图) 关系:一个进程有多个线程,同类的多个线程共享进程的堆和方法区资源。 区别: 1、线程是一个比进程更小的执行单位,基本上各进程是独立的,各线程则不一定,同一个进程中的各线程可能相互影响。 2、线程执行开销比较小,不利于资源的管理和保护;进程执行开销比较大,有利于资源的管理和保护。 ...

2022-02-10 19:40:59 389

原创 面试题 MyISAM和InnoDB区别

1、InnoDB支持表级锁和行级锁,默认行级锁;MyISAM只支持表级锁 2、InnoDB支持事务;MyISAM不支持 3、InnoDB支持外键;MyISAM不支持 4、InnoDB支持数据库异常崩溃后安全恢复;MyISAM不支持 (使用 InnoDB 的数据库在异常崩溃后,数据库重新启动的时候会保证数据库恢复到崩溃前的状态。这个恢复的过程依赖于redo log[重做日志] ) 5、InnoDB支持MVCC;MyISAM不支持 *6、InnoDB在5.6版本之后支持全文索引 *7、InnoDB索

2022-02-06 20:00:19 1152

原创 面试题 ArrayList和LinkedList区别

相同点:ArrayList与LinkedList都是不同步的(Vector同步),都是线程不安全的。 不同点: 1、(底层数据结构不同)ArrayList底层数据结构是Object数组,LinkedList底层数据结构是双向链表。 2、(主要控件开销不同)ArrayList主要为List列表的结尾预留一定的容量空间;LinkedList主要内存花费在存储指针和节点上。 3、(插入和删除是否受元素位置影响)ArrayList采用数组存储,插入和删除元素时间复杂度受元素位置影响;LinkedList采用

2022-02-03 15:45:30 1148

原创 面试题 重写与重载的区别?

重写:(就是子类对父类方法的改造,外部样子不变,内部逻辑可以改变) 发生在父类和子类之间; 方法名、参数列表、返回值类型必须相同; 子类访问修饰符权限要大于等于父类; 子类抛出异常范围小于等于父类抛出的异常范围(不能出现新的强制性异常); 子类方法返回值类型要小于等于父类方法的返回值类型。(两同两小一大) 注意: 1、如果父类的方法被private、final、static修饰,则不能被重写,但static修饰的方法可再次被声明;构造方法不能被重写。 2、如果方法返回值类型是void和基本数

2022-02-02 19:19:28 1559

原创 面试题 抽象类与接口的区别

抽象类概念:如果一个类没有足够的信息来描述一个具体的对象,需要其它类来支持,这样的类称为抽象类。 接口概念:是一种比抽象类还抽象的“类” 相同点: 1、都不能直接实例化,必须通过子类或实现类来实例化 2、子类或实现类必须要重写父类所有抽象方法,否则要声明为抽象类 不同点: 1、(继承)接口支持多继承,抽象类支持单继承 2、(关键字)接口用interface关键字修饰,抽象类用abstract class关键字修饰 3、(成员变量)接口中只能是public static final修饰的公共的

2022-02-01 11:29:47 482

原创 Java关键字final、static、this、super总结

一、final关键字: final关键字特点: 1、final修饰的类不能被继承 2、final修饰的方法不能被重写 3、如果final修饰的变量是基本数据类型,那么一旦被初始化后就不能更改;如果final修饰的是引用数据类型,那么一旦初始化后就不能指向其他对象。 4、final不能修饰构造方法(构造器不是通过继承得到的,所以没有必要) 使用final修饰的方法的原因: 1、方法锁定,不能被继承类重写或修改 2、高效(Java早期版本,会将final修饰的方法转为内嵌调用,但是如果方法过于庞

2022-01-31 16:43:27 779

原创 面试题 什么是面向对象?封装、继承、多态概念?什么是多态?多态三要素?

面向对象一般与面向过程对比: 面向对象侧重于事情有多少的参与者(对象)和这些参与者需要做什么? 面向过程侧重于事情的每一步骤及顺序。 封装:将一个对象的内部实现细节隐藏起来,不被外部类访问;但是可以通过提供给外部类访问方法来访问。封装过程:属性私有化,提供get/set方法 继承:不同类型的对象,使他们有一些共同的属性。场景:存在于父类与子类之间 多态:一个对象有多种状态。 多态三要素:两个类要有继承关系;子类重写父类的方法;父类的引用指向子类的对象。 ...

2022-01-30 16:31:51 1022

空空如也

空空如也

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

TA关注的人

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