PS:在写这段代码的时候,还发现了一个细节,就是try...catch代码块后面的代码,在发生异常的时候,会能执行到的。所以B回滚的代码:throw e,是不需要放在finally里面的,也就是说,只要B事务发生异常,无论A补偿是否成功,B都可以成功的回滚。 但是经过和别人的讨论,发现此处严谨来说, ...
分类:
其他好文 时间:
2020-07-09 22:45:23
阅读次数:
213
本文参考Java教程 ###接口的概述: 接口,是Java语言中一种引用类型,是方法的集合,如果说类的内部封装了成员变量、构造方法和成员方法,那么接口的内部主要就是封装了方法,包含抽象方法(JDK 7及以前),默认方法和静态方法(JDK >8),私有方法(JDK 9)。 接口的定义: 它与定义类方式 ...
分类:
编程语言 时间:
2020-07-09 12:37:18
阅读次数:
74
1 匿名对象 1.1 匿名对象的概念 匿名对象是指创建对象时,只有创建对象的语句,却没有把对象地址值赋值给某个变量。 例 如:已经存在的类: public class Person{ public void eat(){ System.out.println(); } } //普通对象 Person ...
分类:
其他好文 时间:
2020-07-08 19:53:10
阅读次数:
66
一、匿名对象 1、匿名对象的概念: 匿名对象是指创建对象时,只有创建对象的语句,却没有把对象地址值赋值给某个变量。 如:已经存在的类: public class Person{ public void eat(){ System.out.println(); } } //创建一个普通对象 Perso ...
分类:
编程语言 时间:
2020-07-08 18:11:36
阅读次数:
60
标题 在文字前写#,注意文字与#之间有一个空格 # 一级标题## 二级标题### 三级标题 以此类推或者用连续的减号或等号写在文字之下: 标题— 粗体斜体 **这个是粗体*这个是斜体****这个是粗体加斜体*** 代码块 (就是一对三个在键盘上的esc键下的那个键) 表 |列名1|列名2||: |: ...
分类:
其他好文 时间:
2020-07-08 13:39:07
阅读次数:
72
背景
软件开发过程中,不可避免的是需要处理各种异常,就我自己来说,至少有一半以上的时间都是在处理各种异常情况,所以代码中就会出现大量的try {...} catch {...} finally {...} 代码块,不仅有大量的冗余代码,而且还影响代码的可读性。比较下面两张图,看看您现在编写的代码属于哪一种风格?然后哪种编码风格您更喜欢?
分类:
其他好文 时间:
2020-07-07 11:34:46
阅读次数:
86
1.可以用来修饰的结构:主要用来修饰类的内部结构 属性、方法、代码块、内部类 2.static修饰属性:静态变量(或类变量) 2.1 属性,是否使用static修饰,又分为:静态属性 vs 非静态属性(实例变量) * 实例变量:我们创建了类的多个对象,每个对象都独立的拥一套类中的非静态属性。当修改其 ...
分类:
其他好文 时间:
2020-07-06 20:21:45
阅读次数:
47
Synchronized锁的是什么? 临界区与锁 并发编程中不可避免的会出现多个线程共享同一个资源的情况,为了防止出现数据不一致情况的发生,人们引入了临界区的概念。临界区是一个用来访问共享资源的代码块,同一时间内只运行一个线程进入。 那么如何实现这个临界区呢?这就用到我们的锁了,当进程想要访问一个临 ...
分类:
其他好文 时间:
2020-07-06 12:50:59
阅读次数:
70
一、lambda表达式 1.1、lambda表达式理解 lambda的主体是一个表达式,而不是一个代码块,仅仅能在lambda表达式中封装有限的逻辑进去。如果要通俗的理解lambda表达式,可以结合C/C++中的逻辑宏定义和内联函数概念,lambda表达式通俗的讲是起到一个函数速写的作用,并且允许在 ...
分类:
编程语言 时间:
2020-07-05 17:22:49
阅读次数:
76
只要条件为 true,循环能够一直执行代码块。 While 循环 while 循环会一直循环代码块,只要指定的条件为 true。 语法 while (条件) { 要执行的代码块 } 实例 在下面的例子中,循环中的代码将运行,一遍又一遍,只要变量(i)小于 10: while (i < 10) { t ...
分类:
编程语言 时间:
2020-07-05 15:43:16
阅读次数:
85