自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 主键/外键/索引

1、主键、外键、索引主键外键索引定义唯一标识一条记录,不能重复,不能为空表的外键是另一张表的主键,外键可以重复,也可以为空值索引没有重复,可以有一个空值作用用来保证数据的完整性用来和其他表建立联系提高数据查询的速度个数主键只能有一个一个表可以有多个外键一个表可以有多个唯一索引2、聚集索引和非聚集索引(1)聚集索引一定是唯一索引,唯一索引不一定是聚集索引(2)聚集索引,在索引页里直接存放数据,而非聚集索引在索引页里存放的是索引,这些索引指向专门

2020-09-15 07:48:44 178

原创 死锁

死锁在并发环境下各个进程因争夺资源而造成的一种互相等待对方手里的资源导致各进程都阻塞,无法向前推进的现象,就是死锁。1、产生死锁的必要条件(1)互斥条件:只有对必须互斥使用的资源的争夺才会导致死锁;(2)不剥夺条件:进程所获得的资源在未使用完之前不能被其它进程强行夺走,只能自己释放;(3)请求和保持条件:进程已经保持了至少一个资源,但又请求了其它资源,而该资源又被其它进程所占用,此时请求进程阻塞,自己占用的资源又不史昂;(4)循环等待条件:存在一种进程资源的循环等待链。2、什么时候发生死锁(

2020-08-10 21:06:55 119

原创 java反射机制

1、反射定义java反射机制是指在运行时获取一个类的方法和变量信息,通过获取到的信息创建对象,调用相应的方法的一种机制。2、获取Class类对象三种方法.Class 、GetClass() 、Class.forName();3、反射获取构造方法GetConstructors():获取类的所有公共的构造方法对象GetConstructor():获取类的单个公共的构造方法对象GetDeclaredConstructors():获取类的所有构造方法对象GetDeclaredConstructor

2020-07-11 17:11:35 132

原创 java多线程以及线程的生命周期

1、多线程线程是指进程中的单个顺序控制流,是一条执行路径,单线程是指一个进程只有一条执行路径,多线程指有多个执行路径。2、线程调度(1)分时调度模型:所有线程轮流使用CPU,平均分配每个线程占用的CPU的时间。(2)抢占式调度模型:优先让优先级高的线程使用CPU。java中使用第二种模型,多线程程序的执行具有随机性,优先级只代表获取使用CPU的机率高,并不一定都跑前面。3、线程控制sleep() :使线程等待setDaemon():设置线程为守护线程join():等待线程死亡4、线程的生

2020-07-10 22:03:19 144

转载 HashMap和HashSet的区别

原博文链接:https://blog.csdn.net/chen213wb/article/details/84647179 1、为什么用HashMap?HashMap是一个散列桶(数组和链表),它存储的内容是键值对(key-value)映射 HashMap采用了数组和链表的数据结构,能在查询和修改方便继承了数组的线性查找和链

2020-07-10 21:41:14 514

原创 java异常

1、异常定义异常就是有异于常态,和正常情况不一样,有错误出现。在java中,阻止当前方法或作用域的情况,称之为异常。2、异常分类Error 表示应用程序中出现了严重的错误,一般表示代码运行时JVM出现问题,如系统崩溃,虚拟机错误,内存空间不足,方法调用栈溢出等。java无能为力,当错误发生时应用不应该处理此类错误。Exception为异常,Exception 类表示程序可以处理的异常,需要捕捉、需要处理的异常,是由与程序设计的不完善而出现的问题,程序必须处理的问题。RuntimeExceptio

2020-07-10 21:10:38 102

原创 List集合遍历以及并发修改异常

List集合一、List遍历方式1、Iterator迭代器遍历2、ListIterator迭代器遍历3、for循环和增强for遍历二、并发修改异常1、异常原因2、异常解决办法一、List遍历方式1、Iterator迭代器遍历2、ListIterator迭代器遍历3、for循环和增强for遍历增强for循环的内部原理是一个Iterator迭代器。二、并发修改异常1、异常原因当使用iterator迭代器遍历集合时,向集合中添加元素会发生并发修改异常。原因如下图,expectedModC

2020-07-07 21:27:19 1818 1

原创 面向对象三大特性:封装、继承、多态

1、封装封装是面向对象的特征之一,是对象和类概念的主要特性。 简单的说,一个类就是一个封装了数据以及操作这些数据的代码的逻辑实体。封装把一个对象的属性私有化,同时提供一些可以被外界访问的属性的方法,如果属性不想被外界访问,我们大可不必提供方法给外界访问。但是如果一个类没有提供给外界访问的方法,那么这个类也没有什么意义了。2、继承继承是使用已存在的类的定义作为基础建立新类的技术,新类的定义可以增加新的数据或新的功能,也可以用父类的功能,但不能选择性地继承父类。通过使用继承我们能够非常方便地复用以前的代码

2020-07-07 20:06:59 123

原创 判断链表中是否有环

1、哈希表通过检查一个结点此前是否被访问过来判断链表是否为环形链表。常用的方法是使用哈希表。我们遍历所有结点并在哈希表中存储每个结点的引用(或内存地址)。遍历整个链表,如果当前结点的引用已经存在于哈希表中,那么返回 true(即该链表为环形链表)。如果不存在而且已经遍历完,那么返回false。import java.util.HashSet; public class Solution { public boolean hasCycle(ListNode head) { Li

2020-07-06 11:16:57 247

原创 方法重写与重载的区别

1、方法重载重载(Overload) 是在一个类里面,但方法的参数不同,包括参数的类型或者个数,返回值的类型可相同可不同。每一个重载的方法都有一个独一无二的参数列表。最常用的地方就是构造器的重载。2.方法重写重写(Override)是子类对父类的允许访问的方法的实现过程进行重新编写, 返回值和参数列表都不能改变。重写的好处在于子类可以根据需要,定义特定于自己的行为。 也就是说子类能够根据需要沿写父类的方法。父类的私有方法时不能被重写的两者区别区别点重载方法重写方法参数列表

2020-07-05 17:38:05 1301

原创 String和StringBuilder区别与互相转换

两者区别String字符串的值创建后不能被更改,因此在进行字符串拼接时都会创建新的String对象,这样既费时又浪费内存。而StringBuilder的值可以更改。StringBuilder sb=new StringBuilder();sb.append(“hello”);sb.append(“java”);sb.reverse();//反转两者互相转换String str =sb.toString();StringBuilder sb=new StringBuilder(str);.

2020-07-05 11:04:59 293

原创 判断二叉树是否镜像对称(java)

1.递归方法利用两个指针分别遍历这课二叉树,p指针和q指针刚开始都指向根节点。p左移时q右移,p右移时q左移,移动的过程中判断结点的值是否相等,以此来判断二叉树是否镜像对称。遍历了这棵树,渐进时间复杂度为O(n),递归层数不超过n,故渐进空间复杂度为O(n)。* Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right

2020-07-05 09:23:16 1970

原创 java数组内存分配

声明一个长度为3的int类型数组:int[] arr=new int[3]栈内存中存放局部变量,定义在方法中的变量,如arr。使用完毕立即消失。堆内存存放new出来的内容(实体、对象),每一个new出来的内容都有地址值。使用完毕会在垃圾回收机制空闲时被回收。数组在初始化时会为存储空间分配默认值。整数:0浮点数:0.0字符:空字符布尔:false引用数据类型:null...

2020-07-04 17:40:39 3532

原创 java数据类型

java分数据类型分为基本数据类型和引用数据类型1、基本数据类型分类如下表数据类型关键字内存占用整数byte/short/int/long1/2/4/8浮点数float/double4/8字符char布尔boolean12、引用数据类型1、类(class)2、接口(interface)3、数组([ ])java是强类型语言,对于每一种数据都给出了明确的数据类型,分配了不同的内存空间。...

2020-07-04 16:26:56 80

原创 JRE/JDK/JVM关系

JVM:即java虚拟机,java语言实现跨平台原理就是在不同的操作系统上安装对应的JVM;JRE:Java Runtime Environment 简写,即java运行环境,包括JVM和java程序运行时所需要的核心类库。运行java程序必须;JDK:包含JRE和开发人员使用的工具,包括编译工具(javac.exe)和运行工具(java.exe);开发新的java程序时需要安装。...

2020-07-04 14:53:55 3989

空空如也

空空如也

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

TA关注的人

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