随笔分类 -  Java基础

摘要:1 异常图一览 阅读全文
posted @ 2021-12-22 21:23 姚狗蛋 阅读(4) 评论(0) 推荐(0) 编辑
摘要:package com.siyu.model.others; /** * 类的初始化 * * 1-静态代码块和静态类变量初始化顺序,谁在上面,谁先执行,只执行一次。 * 2-非静态成员变量和非静态代码块谁在上谁先执行,并且每实例化一次,就执行一次;构造器最后执行, * 3-在子类的构造器,一定会调用 阅读全文
posted @ 2021-12-18 12:40 姚狗蛋 阅读(36) 评论(0) 推荐(0) 编辑
摘要:package com.siyu.model.others; /** * String是不可变类 * 怎样实现一个不可变类? * 不可变类可以解决什么问题:解决线程安全的问题 * * 1:类定义为final,保证类不被继承 * 2: 确保所有变量被private修饰,保证不能被外部访问到 * 3: 阅读全文
posted @ 2021-12-16 15:39 姚狗蛋 阅读(22) 评论(0) 推荐(0) 编辑
摘要:1 尽量指定类、方法的final修饰符 带有final修饰符的类是不可派生的。 在Java核心API中,有许多应用final的例子,例如java.lang.String,整个类都是final的。 为类指定 final修饰符可以让类不可以被继承, 为方法指定final修饰符可以让方法不可以被重写。 如 阅读全文
posted @ 2021-12-16 11:31 姚狗蛋 阅读(18) 评论(0) 推荐(0) 编辑
摘要:1-利用 static 关键字,可以把字段变成静态字段,也可以把函数变为静态函数,调用时就无需初始化类对象。 2-提前return异常 3-数据量比较大,批量操作数据入库 4-耗时操作考虑异步处理 5-恰当使用缓存,redis,map, 6-优化sql (加索引 避免返回不必要的数据 优化sql结构 阅读全文
posted @ 2021-12-11 22:28 姚狗蛋 阅读(22) 评论(0) 推荐(0) 编辑
摘要:1-Unchecked异常 Unchecked 异常继承了RuntimeException , 特点是代码不需要处理它们也能通过编译, 所以它们称作 Unchecked 异常。 利用 Unchecked 异常, 可以避免不必要的 try-catch 和 throws 异常处理。 阅读全文
posted @ 2021-12-11 17:28 姚狗蛋 阅读(16) 评论(0) 推荐(0) 编辑
摘要:1-事务 2 回滚 3 事务失效 3-1 @ Transactional 默认情况下,只会对RuntimeException Error的异常来回滚, 如果抛出检查异常,则不会回滚。 所以,@ Transactional要改为@ Transactional(rollbackFor = Excepti 阅读全文
posted @ 2021-12-11 17:28 姚狗蛋 阅读(9) 评论(0) 推荐(0) 编辑
摘要:框架:半成品软件。可以在框架的基础上进行软件开发,简化编码 反射:将类的各个组成部分封装为其他对象,这就是反射机制 1 反射的好处 可以在程序运行过程中,操作这些对象。 可以解耦,提高程序的可扩展性。 2 获取Class对象的3种方式 Class.forName("全类名"):将字节码文件加载进内存 阅读全文
posted @ 2021-12-11 17:22 姚狗蛋 阅读(18) 评论(0) 推荐(0) 编辑
摘要:数据库删除操作中的 delete、drop、 truncate 区别在哪? 当不再需要该表时可以用 drop 来删除表; 当仍要保留该表,但要删除所有记录时, 用 truncate来删除表中记录。 当要删除部分记录时(一般来说有 WHERE 子句约束) 用 delete来删除表中部分记录。 阅读全文
posted @ 2021-12-11 17:15 姚狗蛋 阅读(27) 评论(0) 推荐(0) 编辑
摘要:1- 数组 数组内存连续,且长度固定,这样知道开始索引,和偏移量,就可以迅速定位到想要的元素。所以数组查询块。 但是数组的增加删除,都会先创建一个新数组,然后复制,所以增删慢 2 阅读全文
posted @ 2021-12-11 17:10 姚狗蛋 阅读(12) 评论(0) 推荐(0) 编辑
摘要:区别 先说== 如果是基本类型,那就比较值 如果引用,比较内存地址 那equals()呢? 这是Object的方法,默认比较也是地址,因为这个方法的最初定义在Object上,默认的实现就是比较地址 自定义的类,如果需要比较的是内容,那么就要学String,重写equals方法 看一个案例 Strin 阅读全文
posted @ 2020-09-26 15:32 姚狗蛋 阅读(83) 评论(0) 推荐(0) 编辑
摘要:#1.jar包的介绍 JAR(Java Archive,Java 归档文件)是与平台无关的文件格式,它允许将许多文件组合成一个压缩文件。JavaSE程序可以打包成Jar包(J其实可以理解为Java了)。 JAR 文件格式以流行的 ZIP 文件格式为基础。 与 ZIP 文件不同的是,JAR 文件不仅用 阅读全文
posted @ 2020-09-23 17:29 姚狗蛋 阅读(634) 评论(0) 推荐(0) 编辑
摘要:1 线程同步指的是多线程的协同,定义多个线程如何访问特定资源,避免多线程并发访问导致数据不一致的问题。ArrayList、LinkkedList、HashMap是最常用的数据结构,但是他们是线程不安全的,在多线程场景下,如果不做控制,可能会到导致线程安全问题。 解决ArrayList、LinkedL 阅读全文
posted @ 2020-09-11 12:13 姚狗蛋 阅读(242) 评论(0) 推荐(0) 编辑
摘要:null表示只有引用,没有实例对象,null可以给任何类型赋值 “”表示长度为0 的字符串,只不过引用指向的是空的字符串,是有实例的。 阅读全文
posted @ 2020-07-20 11:43 姚狗蛋 阅读(613) 评论(0) 推荐(0) 编辑
摘要:1 判断某个注解是否存在 判断某个注解是否存在于Class、Field、Method或Constructor: Class.isAnnotationPresent(Class) Field.isAnnotationPresent(Class) Method.isAnnotationPresent(C 阅读全文
posted @ 2020-07-06 18:29 姚狗蛋 阅读(275) 评论(0) 推荐(0) 编辑
摘要:类的生命周期 加载-验证-准备-解析-初始化-使用-卸载 1 加载阶段 把.class二进制数据读到内存中,并放到方法区,然后在堆中创建一个Java.lang.Class对象,这个对象就是用来封装类在方法区的数据结构的。 所以,类加载机制的最终产物是:在堆中创建了java.lang.Class对象, 阅读全文
posted @ 2020-07-04 18:43 姚狗蛋 阅读(174) 评论(0) 推荐(0) 编辑
摘要:1 面试的流程 自我介绍-笔试题目-基础知识-业务知识-情景问题 2 基础知识 1、使用length属性获取数组长度,public、private、protected、default区别 2、Collection和Collections区别 3、String s=new String(‘xyz’); 阅读全文
posted @ 2020-07-04 17:56 姚狗蛋 阅读(162) 评论(0) 推荐(0) 编辑
摘要:null和""的区别 问题一: null和""的区别 String s=null; string.trim()就会抛出为空的exception String s=""; string.trim()就不会抛,为什么? 答: NULL代表声明了一个空对象,根本就不是一个字符串。 ""代表声明了一个对象实 阅读全文
posted @ 2020-06-26 11:17 姚狗蛋 阅读(441) 评论(0) 推荐(0) 编辑
摘要:类的生命周期 加载-验证-准备-解析-初始化-使用-卸载 1 加载阶段 把.class二进制数据读到内存中,并放到方法区,然后在堆中创建一个Java.lang.Class对象,这个对象就是用来封装类在方法区的数据结构的。 所以,类加载机制的最终产物是:在堆中创建了java.lang.Class对象, 阅读全文
posted @ 2020-06-14 23:17 姚狗蛋 阅读(143) 评论(0) 推荐(0) 编辑
摘要:cron表达式分为七个域,之间使用空格分隔。其中最后一个域(年)可以为空。每个域都有自己允许的值和一些特殊字符构成。使用这些特殊字符可以使我们定义的表达式更加灵活。 下面是对这些特殊字符的介绍: 逗号(,):指定一个值列表,例如使用在月域上1,4,5,7表示1月、4月、5月和7月 横杠(-):指定一 阅读全文
posted @ 2020-06-11 10:47 姚狗蛋 阅读(153) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示