2020.7.13-2021.8.6 中兴华通笔记2

sql cast函数 nnxx
jdk1.8新特性 lamda表达式 函数式编程 接口可以有默认实现方法 default和static修饰 接口变量默认都是以final修饰
stream API 新日期时间API localtime localdate localdatetime (时区) ZonedDateTime Zoneid

公式:-n=~n+1

restful风格 闲适宁静的; 使人感到悠闲的;
springboot注解 事务回滚 数据库事务回滚 @transactional 方法必须为public修饰才有效!
redis

总结下来就是@PostMapping和@GetMapping都可以用@RequestMapping代替,如果读者怕在映射的时候出错
,可以统一写@RequestMapping,当然这样写的话也有弊端,笼统的全用@RequestMapping,
不便于其他人对代码的阅读和理解!还是建议区分开来写!养成良好的代码习惯!

Optional 类是一个可以为null的容器对象。如果值存在则isPresent()方法会返回true,调用get()方法会返回该对象。
Optional 是个容器:它可以保存类型T的值,或者仅仅保存null。Optional提供很多有用的方法,这样我们就不用显式进行空值检测。
Optional 类的引入很好的解决空指针异常。
//判断段落是否为空 为空抛出异常
Optional oldParagraph = Optional.ofNullable(oldParagraph).orElseThrow(() -> new Exception(“段落为空”));

1.静态内部类跟静态方法一样,只能访问静态的成员变量和方法,不能访问非静态的方法和属性
,但是普通内部类可以访问任意外部类的成员变量和方法 抽象类中的抽象方法不能有方法体
2.静态内部类可以声明普通成员变量和方法,而普通内部类不能声明static成员变量和方法。
3.静态内部类可以单独初始化
Inner i = new Outer.Inner();
普通内部类初始化
Outer o = new Outer();
Inner i = o.new Inner();

静态变量(类变量)存在于方法区中,方法区在JVM中也是一个非常重要的区域,它与堆一样,是被线程共享的区域。
在方法区中,存储了每个类的信息(包括类的名称、方法信息、字段信息)、静态变量、常量以及编译器编译后的代码等。

在面向对象的概念中,所有的对象都是通过类来描绘的,但是反过来,并不是所有的类都是用来描绘对象的
,如果一个类中没有包含足够的信息来描绘一个具体的对象,这样的类就是抽象类。
接口的方法默认就是public abstract
变量默认就是public static final

include指令,(静态包含)被包含的文件被原封不动的插入到包含页面中使用该指令的位置
,然后JSP编译器再对这个合成的文件进行编译,最终编译后的文件只有一个。 是在翻译阶段执行

jsp:include (动态包含)包含文件时,当该动作标识执行后,JSP程序会将请求转发到(注意不是重定向)被包含页面
,并将执行结果输出到浏览器中,然后返回页面继续执行后面的代码,以为web容器执行的两个文件
,所以JSP编译器会分别对这两个文件进行编译。 在请求处理阶段执行.

静态的include:是jsp的指令来实现的,<% @ include file=“xx.html”%> 特点是 共享request请求域,
先包含再编译,不检查包含页面的变化。
动态的include:是jsp动作来实现的,<jsp:include page=“xx.jsp” flush=“true”/> 这个是不共享request请求域
,先编译在包含,是要检查包含页面的变化的

加载驱动方法
1.Class.forName(“com.microsoft.sqlserver.jdbc.SQLServerDriver”);
2. DriverManager.registerDriver(new com.mysql.jdbc.Driver());
3.System.setProperty(“jdbc.drivers”, “com.mysql.jdbc.Driver”);//设置系统属性

线程在其run()方法执行完以后就会释放掉内存,但是其引用不一定不存在了
一旦垃圾回收器准备好释放对象占用的存储空间,将首先调用其finalize()方法,
并且在下一次垃圾回收动作发生时,才会真正的回收对象占用的内存

      作用域    当前类    同一package   子孙类     其他package 

       public        √            √                    √           √ 

      protected     √           √                 √           × 

(default) friendly √ √ × ×

      private       √            ×                  ×           ×

1,Java 关键字列表 (依字母排序 共50组):
abstract, assert, boolean, break, byte, case, catch, char, class, const(保留关键字), continue, default, do, double, else,
enum, extends, final, finally, float, for, goto(保留关键字), if, implements, import, instanceof, int, interface
, long, native, new, package, private, protected, public, return, short, static, strictfp, super, switch, synchronized,
this, throw, throws, transient, try, void, volatile, while
2,保留字列表 (依字母排序 共14组),Java保留字是指现有Java版本尚未使用,但以后版本可能会作为关键字使用:
byValue, cast, false, future, generic, inner, operator, outer, rest, true, var, goto (保留关键字) ,
const (保留关键字) , null

java.lang包 包含 包装类 、String 类、Math 类 、Class 类 、Object 类

重载的判定只有两个条件(其他的条件都不能作为判定):
1、 方法名一致 2、形参列表不同
重写只发生在可见的实例方法中:
1、静态方法不存在重写,形式上的重写只能说是隐藏。
2、私有方法也不存在重写,父类中private的方法,子类中就算定义了,就是相当于一个新的方法。
3、静态方法和实例方法不存在相互重写。
重写满足一个规则:两同两小一大
1、两同:方法名和形参列表一致
2、两小:重写方法的返回值(引用类型)和抛出异常,要和被重写方法的返回值(引用类型)和抛出异常相同或者是其子类。
注意,一旦返回值是基本数据类型,那么重写方法和被重写方法必须相同,且不存在自动拆装箱的问题。
3、一大:重写方法的访问修饰符大于等于被重写方法的访问修饰符。

栈先进后出 吃了吐 队列先进先出 吃了拉

DBMS关系型数据库事务四大特性:
原子性:事务是一组不可分割的操作单元,这组单元要么同时成功要么同时失败(由DBMS的事务管理子系统来实现);
一致性:事务前后的数据完整性要保持一致(由DBMS的完整性子系统执行测试任务);
隔离性:多个用户的事务之间不要相互影响,要相互隔离(由DBMS的并发控制子系统实现);
持久性:一个事务一旦提交,那么它对数据库产生的影响就是永久的不可逆的,如果后面再回滚或者出异常
,都不会影响已提交的事务(由DBMS的恢复管理子系统实现的)

i++和++1的区别
i++,是先赋值,后加一,++i是先加一后赋值,楼主发的五个i=++i,是i在内存自增一,然后进寄存器
,最后赋值的时候i赋值就是1,第二个就是2,第五个就是5!而五个i=i++, 是赋值之后再自增1,i=0这个值先进寄存器
,然后i在内存自增1,最后赋值的时候寄存器出来的0值会冲掉1值成为最终结果,所以无论多少个结果都会是0。

String str = new String(“abc”)
"abc"就是存储在常量池中的,而new的String对象存储在堆中,引用对象str存储在栈中

Java中没有全局变量的概念,变量分为类的成员变量、静态成员变量和方法中的局部变量。
先说局部变量,基本类型的局部变量变量名和值都存放在虚拟机栈中,引用类型的局部变量变量名存放在栈中
,而变量指向的对象存放在堆中。

再说类的成员变量,不论基本类型还是引用类型,变量名和值都随着类的实例(对象)存放在堆中。

最后说说静态变量,它比较特殊,是属于类的变量,在jdk7及之前的版本,随类存放在方法区中
。在jdk8之后,由于虚拟机内存结构的变化,静态变量和常量池一起被迁移到了堆中。(类变量)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值