- 博客(18)
- 收藏
- 关注
原创 行级锁 表级锁 乐观锁 悲观锁
乐观锁与悲观锁乐观锁:总是假设最好的情况,每次去拿数据的时候都认为别人不会修改,所以不会上锁,但是在更新的时候会判断一下在此期间别人有没有去更新这个数据,可以使用版本号机制和CAS算法实现。乐观锁适用于多读的应用类型,这样可以提高吞吐量,像数据库提供的类似于write_condition机制,其实都是提供的乐观锁。在Java中java.util.concurrent.atomic包下面的原子变量类就是使用了乐观锁的一种实现方式CAS实现的。悲观锁:总是假设最坏的情况,每次去拿数据的时候都认为别人会修
2020-07-21 13:35:08
382
原创 SQL查询语句关键字的执行顺序
SQL查询语句关键字的执行顺序优先级顺序from ->on ->join ->where ->group by ->having ->select ->distinct ->order by->limit1.FROM:组装来自不同数据源的记录ON :排除不满足join的条件的行2.JOIN:多表关联3.WHERE:根据指定的条件过滤上一步检索出的记录4.GROUP BY:对上面过滤后的记录按指定条件分组 可使用列别名5.HAVING:对
2020-07-21 13:23:11
593
原创 Statement和PreparedStatement的区别
区别: 1、PreparedStatement可以使用占位符,是预编译的,批处理比Statement效率高 2、使用 Statement 对象。在对数据库只执行一次性存取的时侯,用 Statement 对象进行处理。PreparedStatement 对象的开销比Statement大,对于一次性操作并不会带来额外的好处。 3、statement每次执行sql语句,相关数据库都要执行sql语句的编译,preparedstatement预编译得, preparedstatement支持...
2020-07-21 13:15:26
13547
原创 抽象类为什么不能直接创建对象
抽象类为什么不能直接创建对象 1、子类更具体,父类更抽象,直接创建父类对对象本身没有意义 。 2、 如果创建的是父类对象在调用方法时,调用的父类中的方法而并非子类的方法,他违背了多态这种思想和设计。 3、因为父类引用指向子类对象时,调用的方法是子类重写的方法,并不是说抽象类的构造方法没有意义,只是在创建子类对象时需要先调用父类的构造方法。...
2020-07-21 13:13:40
2141
原创 初识Java——面向对象(二)
面向对象(Object Oriented)上一篇我总结了面向对象和面向过程的一些基础知识以及简单地运用面向对象创建一个简单事物,那么这一篇就接着上一篇的内容,继续总结面向对象中应该注意的一些事项以及如何封装。class Test01{ public static void main(String[] args){ Point p1=new point(); ...
2020-02-28 17:30:07
273
原创 初识Java——面向对象(一)
面向对象(Object Oriented)学习了半个月,终于结束了JavaSE的学习,之后的学习就进入了Java的第二阶段——面向对象。面向过程和面向对象作为Java语言中特别重要的思想,但是相对而言这两个知识比较偏向于抽象概念,重在理解,所以在总结过程中为了方便理解会尽量不用官方语言,注重自己的个人理解。首先,什么是面向过程和面向对象?很简单,就从字面上理解,这两个都为动宾结构,面向...
2020-02-27 20:54:58
435
原创 练习题——排序
排序作为数组这一章中的重要算法,题目也是相当有难度的,下面就是我总结的几道题目。思路:这一题的要求是计算数字的出现次数,那么最优的解题方法就是先运用计数排序,然后遍历每个元素,如果出现重复的数字,则次数+1,这样题目就解决了。import java.util.*;class Home05_01{ public static void main(String[] args){...
2020-02-18 16:14:44
198
原创 初识Java——排序
排序数组是任何计算机语言中非常重要的知识点,在数组中非常重要的知识点就是排序,简称重中之重。排序为什么这么重要呢?首先,排序是我们最先接触到的算法,至于算法的重要性我就不多说了,学好排序能够有助于培养我们的算法思想。其次,排序的种类有很多,因此它能够解决我们遇到的许多难题。最后,排序能够有效的训练我们打代码的能力。因此,学好排序是至关重要的。排序的方法有很多种:选择排序、冒泡排序、插入排序...
2020-02-18 02:19:44
148
原创 初识Java——数组
数组(Array)之前呢要是定义100个整型变量,我们可能会用到下面的方法:int i1,i2,i3......i100;这种最初始的方法可能看起来不会很麻烦,但是如果定义100个坐标呢?就会非常麻烦。如果我们运用数组的知识,完成此类要求就会显得容易许多。那什么是数组呢?数组的概念数组就是一片地址连续且空间大小一致的存储空间(但是每个空间存的还是其他数据的地址) 数组存放在...
2020-02-15 12:54:52
370
原创 Java小游戏——汉诺塔
汉诺塔汉诺塔源于一个古老的传说:在世界中心贝拿勒斯(在印度北部)的圣庙里,一块黄铜板上插着三根宝石针。印度教的主神梵天在创造世界的时候,在其中一根针上从下到上地穿好了由大到小的64片金片,这就是所谓的汉诺塔。不论白天黑夜,总有一个僧侣在按照下面的法则移动这些金片:一次只移动一片,不管在哪根针上,小片必须在大片上面。僧侣们预言,当所有的金片都从梵天穿好的那根针上移到另外一根针上时,世界就将在...
2020-02-13 19:57:57
679
原创 人用迭代,神用递归
迭代——递归这一次的总结的标题有些不一样,为什么说“人用迭代,神用递归”呢?这是因为迭代和递归都可以解决代码中反复出现的语句,只是解决的方法不一样罢了。迭代迭代字面意思就是一代又一代,听起来有点儿像循环,实际上它就是循环,迭代思想就是运用循环去解决代码中反复出现的语句。而循环作为Java语言中较为基础的一种方法,是能够被大家所熟悉掌握的,这也是为什么“人用迭代”。递归递归的含义...
2020-02-13 17:50:51
1570
原创 初识Java——函数
函数函数对于我们大家而言都不陌生,无论是在数学还是物理的学习中我们都接触过函数这个概念,但是在Java语言中函数是非常复杂的,因为它不仅要定义自己本身的功能,还要根据当前代码环境进行适当的变换,每一个函数在不同的代码环境中都是不同的,即使是相同的函数在不同的代码环境中都有可能表示不同的功能。函数的定义那什么是函数呢?函数是定义在类中的具有特定功能的一段独立小程序,函数也称之为方法。...
2020-02-13 01:28:58
203
原创 练习题——流程控制语句(下)
上一次我总结了有关选择结构的 if 和 switch 语句的练习题,相比于今天要总结的循环结构要简单许多,因此这次总结会更加细致。这里先总结一个解决for循环的方法:先看行与行之间的规律。因为这个规律比较明显,所以我们一般将这个for循环写在最外层 其次观察每一行(列)有什么规律。如果每一行的规律不止一个,那就还是按规律比较明显的先写。(这时就是嵌套 for 循环,注意格式的缩进)。 ...
2020-02-11 11:42:01
239
原创 练习题——流程控制语句(上)
选择结构:if 以及 switch 语句: 数据:一个三位整数、从左到右的数字、从右到左的数字输入:输入一个三位整数计算:计算出从左到右(从右到左)的数字(%10就是取余,为了得到每个数字的最后一位; 因为插入的是int型,所以/10是为了得到除去最后一位后的数字) 判断从左到右和从右到左的数字是否一致输...
2020-02-09 20:16:34
734
原创 初识Java——流程控制语句
Hello~大噶好!你们的大鹏鹏又双叒叕地来做知识总结了。上一章我总结了Java语言中的基本数据与计算,那今天我就要总结Java语言中的流程控制语句,这一章是非常重要的,因为这一章既讲到了选择结构,也就是我们口中经常提到的 if 和 switch 语句,也讲到了循环结构,循环结构相信大家是一点也不陌生—— for 循环和 while 循环。这一章讲到的只是Java语言中比较基本的知识点,那为什么又...
2020-02-09 17:05:45
220
原创 初识Java——基本数据与简单计算
基本数据与简单计算(指令) 前面总结了在学习Java之前应该如何设置自己的计算机来兼容Java——配置Java环境变量。做好准备工作之后当然就是最兴奋的环节——编译以及运行代码。但是,仅仅配置好环境变量是不够的!就好比你买了一辆车并且拿到了驾照,但是想要获得极佳的驾驶体验光有这两个是远远不够的,你还要了解车上的每一个构件,例如:发动机、轮胎、中控等等。这样你才能将车的性能更好地发挥出来...
2020-02-07 18:35:13
356
原创 初识Java——指针
指针(Pointer) 还记得第一次接触指针是在大一的c语言学习中,当时学完之后只知道 * 就是代表的指针,但是至于其真实含义及用法还没有真正学会。这一次从零开始学习Java,又一次学习到了指针,因此对指针有了更多的认识,下面就是通过最近的学习我对指针的认知。首先要讲指针,就不得不讲变量。因为指针中保存着变量的地址。变量——计算机语言中能储存计算结果或能表示值的抽象概念从字面...
2020-02-06 13:51:09
855
原创 初识Java——配置环境变量
在学习Java之前我们需要知道什么是Java?Java是SUN(Stanford University Network,斯坦福大学网络公司)1995年推出的一门高级编程语言,是一种面向Internet的编程语言。随着Java技术在web方面的不断成熟,已经成为Web应用程序的首选开发语言。Java语言跨平台性的特点,让Java语言编写的应用程序在不同的系统平台上都可以运行。原理是只要在需要运...
2020-02-05 15:02:14
222
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人