自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

tayloramanda的博客

记录一下

  • 博客(57)
  • 资源 (6)
  • 问答 (2)
  • 收藏
  • 关注

原创 什么时候用trycatch,面试

面试官:什么情况下用到try-catch?程序员:代码执行预料不到的情况,我会使用try-catch。面试官:什么是预料不到的情况呢?程序员:比如我要计算a除以b,但是b是变量,如果b等于0程序就会出错,所以我会将程序代码放在try中。面试官:还有其他情况会遇到try-catch吗?程序员:我会在上传文件时使用try-catch,之前做过一个网站有上传文件的功能,线下测试的时候没有问题,但是那个线上环境是一个仅有100M的虚拟空间,除了代码剩余的空间所剩无几,所以网站上线后没过多长时间上传文件就在catch

2020-09-28 22:13:38 241

原创 tcp与udp!!!

5、TCP 的主要特点是什么?1. TCP 是面向连接的。(就好像打电话一样,通话前需要先拨号建立连接,通话结束后要挂机释放连接);2. 每一条 TCP 连接只能有两个端点,每一条 TCP 连接只能是点对点的(一对一);3. TCP 提供可靠交付的服务。通过 TCP 连接传送的数据,无差错、不丢失、不重复、并且按序到达;4. TCP 提供全双工通信。TCP 允许通信双方的应用进程在任何时候都能发送数据。TCP 连接的两端都设有发送缓存和接收缓存,用来临时存放双方通信的数据;5.面向字节.

2020-09-28 21:05:32 1896 1

原创 哈希冲突及四种解决方法

哈希冲突的产生原因通过哈希函数产生的哈希值是有限的,而数据可能比较多,导致经过哈希函数处理后仍然有不同的数据对应相同的值。这时候就产生了哈希冲突。解决哈希冲突的四种方法1.开放地址方法线性探测   按顺序决定值时,如果某数据的值已经存在,则在原来值的基础上往后加一个单位,直至不发生哈希冲突。 再平方探测   按顺序决定值时,如果某数据的值已经存在,则在原来值的基础上先加1的平方个单位,若仍然存在则减1的平方个单位。随之是2的平方,3的平方等等。直至不发生哈希冲突。伪随机探测  

2020-09-28 20:42:57 7100

原创 java乘积最大子数组、最大子序和

class Solution {public: int maxProduct(vector<int>& nums) { int res = INT_MIN; int imax = 1, imin = 1; for (int i = 0; i < nums.size(); i++) { if (nums[i] < 0) swap(imin, imax);//如果数组的数是负数,那么会导致最大的变最小的,最小的变最大的。因此交换两个的值。...

2020-09-28 20:30:11 118

原创 删除重复数字的节点(1:删除重复的;2:删除所有的)

1.给定一个排序链表,删除所有重复的元素,使得每个元素只出现一次。示例 1: 输入: 1->1->2输出: 1->2示例 2: 输入: 1->1->2->3->3输出: 1->2->3/* * 解题思路: * 用两个指针,一个指针current记录当前不重复的位置,index记录重复的位置,index指针不断往下移动,知道遇到不重复的数字, * 移动current指针到index位置,index指针下移知道遇到不重复的位置

2020-09-28 20:15:08 356

原创 java判断括号匹配(正则)

https://blog.csdn.net/qq_28663043/article/details/54017575?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-3.channel_param&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-3.channel_parampackage bul

2020-09-26 16:01:14 441

转载 数据库事务什么的

https://www.cnblogs.com/huanongying/p/7021555.html

2020-09-23 21:59:40 89

原创 什么是线程池?它的优势

实现方式:一池固定线程一池一线程一池多线程七大参数:工作流程:

2020-09-23 15:25:59 103

原创 JAVA锁定义?synchronized lock

eg:(可重入锁作用:防止死锁)

2020-09-23 10:49:07 99

原创 HashSet为什么不安全

https://blog.csdn.net/weixin_44774355/article/details/104442999当我们Set set = new HashSet<>();以后我们会发现HashSet底层是HashMap源码截图:Map是以key,value键值对存在的,而set只有一个值,所以我们继续看set.add()源码:add()中值为map的key所以我们从源码中add()确实调用了put(),我们set.add()时添加到map中的key为.

2020-09-22 20:17:27 1123 1

原创 ArrayList线程不安全例子

or此时都是单线程,安全eg:三个线程ArrayList在写操作(add)为了保证并发性和效率没有加syncronized

2020-09-22 19:58:16 229

原创 啥子是volatile

线程的安全性获得保证三大特性:保证可见性 不保证原子性 禁止指令重排

2020-09-22 16:26:00 90

原创 redis在项目中的使用场景

2020-09-22 14:15:03 149

原创 局部变量与成员变量的区别(图片 )

2020-09-22 11:12:40 129

原创 图解——线程安全的本质

线程安全本质是由于多个线程对同一个堆内存中的Count变量操作的时候,每一个线程会在线程内部创建这个堆内存Count变量的副本,线程内所有的操作都是对这个Count副本进行操作。这时如果其他线程操作这个堆内存Count变量,改变了Count值对这个线程是不可见的。当前线程操作完Count变量将值从副本空间写到主内存(堆内存)的时候就会覆盖其他线程操作Count变量的结果,引发线程不安全问题。...

2020-09-22 09:40:58 545

原创 一个例子——类加载顺序

public class ttt { static int x=7; public static void main(String[] args) { String s=""; for(int y=0;y<3;y++){ x++; switch(x){ case 8:s+="8"; case 9:s+="9"; case 10:{s+="10";break;} default: s+="d"; case 13:s+="13"; } } System..

2020-09-21 14:32:09 65

原创 POST和GET的区别!背住!

POST和GET是HTTP请求的两种方式,都可实现将数据从浏览器向服务器发送带参数的请求。HTTP请求底层协议都是TCP/IP,所以两者没有本质的区别。GET产生一个TCP数据包;POST产生两个TCP数据包GET方法(get通过地址栏传输)把参数通过key/value形式存放在URL里面,一般需要保密的请求不使用GET。浏览器会把http header和data一并发送出去,服务器响应200(返回数据);POST方法(post通过报文传输)它用于修改服务器上的数据,一般这些数据

2020-09-21 10:45:01 93

原创 2020/09/21HTTP 和 SOCKET的区别

HTTP 协议:超文本传输协议,对应于应用层,用于如何封装数据.TCP/UDP协议:传输控制协议,对应于传输层,主要解决数据在网络中的传输。IP 协议:对应于网络层,同样解决数据在网络中的传输。一、HTTP 协议http 为短连接:客户端发送请求都需要服务器端回送响应.请求结束后,主动释放链接,因此为短连接。通常的做法是,不需要任何数据,也要保持每隔一段时间向服务器发送"保持连接"的请求。这样可以保证客户端在服务器端是"上线"状态。HTTP连接使用的是"请求-响应"方式,不仅在请求时建.

2020-09-20 22:12:03 450

原创 集线器、交换机、路由器、网桥、网关之间的区别

集线器(HUB)  集线器就是将网线集中到一起的机器,也就是多台主机和设备的连接器。 广播形式传输数据(物理层)交换机(Switch)  交换机是集线器的升级换代产品,通过对信息进行重新生成,并经过内部处理后转发至指定端口,具备自动寻址能力和交换作用,由于交换机根据所传递信息包的目的地址,将每一信息包独立地从源端口送至目的端口,避免了和其他端口发生碰撞。交换机是利用物理地址或者说MAC地址来确定转发数据的目的地址根据网口地址传送信息(数据链路层)路由器(Router)...

2020-09-20 21:56:52 607

原创 2020/09/20数据库删除语句 Drop、Truncate和Delete比较

数据库中的delete 与drop的区别, 从下面的例子开始:delete: delete from 表名 where 条件drop: alter table 表名 drop 字段 drop table 表drop可用于删除数据库(drop database 数据库名称)、删除数据表(use 数据库名称drop table 数据表1名称,数据表2名)或删除数据表字段(use 数据库名称 alter table 数据表名称 dr...

2020-09-20 16:54:07 378

原创 什么是内存泄漏?java垃圾回收机制

一般我们所说的内存泄漏指的是堆内存的泄漏。堆内存是程序从堆中为其分配的,大小任意的,使用完后要显示释放内存。当应用程序用关键字new等创建对象时,就从堆中为它分配一块内存,使用完后程序调用free或者delete释放该内存,否则就说该内存就不能被使用,我们就说该内存被泄漏了。...

2020-09-20 16:24:26 337

原创 left join和right join和inner join

left join(左联接) 返回包括左表中的所有记录和右表中联结字段相等的记录 right join(右联接) 返回包括右表中的所有记录和左表中联结字段相等的记录 inner join(等值连接) 只返回两个表中联结字段相等的行...

2020-09-20 16:16:07 182

原创 2020/09/20数据库

1 为什么要使用数据库?2 什么是SQL?指结构化查询语言,全称是 Structured Query Language。 SQL 让您可以访问和处理数据库。3 什么是MySQL?开放源码的关系数据库管理系统4 数据库三大范式是什么属性(行)不可再分(属性的原子性) 属性完全依赖于主键(非主关键字字段必须完全依赖于主关键字字段) 属性不依赖于其它非主属性 5 mysql有关权限的表都有哪几个6 MySQL的binlog有有几种录入格式?分别有什么区别?数据类型..

2020-09-20 16:02:42 74

原创 输入网址在浏览器中会发生什么

TCP/IP 协议采用4层结构,分别是应用层、传输层、网络层和链路层"一个主机的数据要经过哪些过程才能发送到对方的主机上"

2020-09-18 13:13:56 68

原创 OSI模型tcp模型(物数网传会表应)

应用层定义了用于在网络中进行通信和数据传输的接口 - 用户程式;提供标准服务,比如虚拟终端、文件以及任务的传输和处理;   表示层掩盖不同系统间的数据格式的不同性;指定独立结构的数据传输格式;数据的编码和解码;加密和解密;压缩和解压缩   会话层管理用户会话和对话;控制用户间逻辑连接的建立和挂断;报告上一层发生的错误   传输层管理网络中端到端的信息传送;通过错误纠正和流控制机制提供可靠且有序的数据包...

2020-09-17 17:06:03 2902

原创 2020/09/17java堆与栈

1.heap是堆,stack是栈。2.stack的空间由操作系统自动分配和释放,heap的空间是手动申请和释放的,heap常用new关键字来分配。3.stack空间有限,heap的空间是很大的自由区。在Java中,若只是声明一个对象,则先在栈内存中为其分配地址空间,若再new一下,实例化它,则在堆内存中为其分配地址。4.举例:数据类型 变量名;这样定义的东西在栈区。如:Object a =null; 只在栈内存中分配空间new 数据类型();或者malloc(长度); 这样定义的东西就在堆区如:

2020-09-16 23:07:13 95

原创 2020/09/17java反射

JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法;这种动态获取的以及动态调用对象的方法的功能称为java语言的反射机制。Java反射机制主要提供了以下功能:在运行时判定任意一个对象所属的类;在运行时构造任意一个类的对象;在运行时判定任意一个类所具有的成员变量和方法;在运行时调用任意一个对象的方法;生成动态代理。...

2020-09-16 20:47:28 77

原创 2020-09-16java中类的生命周期

java中类的生命周期为装载、连接、初始化、使用和卸载五个过程。1.加载我们编写一个java类的代码,经过编译之后生成一个后缀名为.class的文件,java虚拟机就能识别这种文件。java的生命周期就是class文件从加载到消亡的过程。关于加载,其实,就是将源文件的class文件找到类的信息将其加载到方法区中,然后在堆区中实例化一个java.lang.Class对象,作为方法区中这个类的信息的入口。但是这一功能是在JVM之外实现的,主要的原因是方便让应用程序自己决定如何获取这个类,在不...

2020-09-16 20:31:21 252

原创 static final用法区别

(1)static 表示静态,它可以修饰属性,方法和代码块。1.static修饰属性(类变量),那么这个属性就可以用类名.属性名来访问,也就是使这个属性成为本类的类变量,为本类对象所共有。这个属性就是全类公有。(共有的类变量与对象无关,只和类有关)。2.static修饰方法(静态方法),会使这个方法成为整个类所公有的方法,可以用类名.方法名访问。3.static修饰初始代码块,这时这个初始代码块就叫做静态初始代码块,这个代码块只在类加载时被执行一次。可以用静态初始代码块初始化一个类。动态初始代码

2020-09-16 20:20:24 146

原创 java de 线程池

线程池: java.util.concurrent.Executors提供了一个 java.util.concurrent.Executor接口的实现用于创建线程池作用:解决处理器单元内多个线程执行的问题,它可以显著减少处理器单元的闲置时间,增加处理器单元的吞吐能力。使用情况:假设一个服务器完成一项任务所需时间为:T1 创建线程时间,T2 在线程中执行任务的时间,T3 销毁线程时间。如果:T1 + T3 远大于 T2,则可以采用线程池,以提高服务器性能。组成部分:...

2020-09-16 19:43:46 743

原创 JVM体系结构原理

一、JVM体系结构: 类装载器ClassLoader:用来装载.class文件 执行引擎:执行字节码,或者执行本地方法 运行时数据区:方法区、堆、Java栈、程序计数器、本地方法栈JVM把描述类数据的字节码.Class文件加载到内存,并对数据进行校验、转换解析和初始化,最终形成可以被虚拟机直接使用的java类型,这就是虚拟机的类加载机制。二、JVM原理:JVM是java的核心和基础,在java编译器和os平台之间的虚拟处理器。它是一种利用软件方法实...

2020-09-16 19:29:24 1007

原创 2020/09/12List set map 有什么区别

面试题:你说说collection里面有什么子类?(其实面试的时候听到这个问题的时候,你要知道,面试官是想考察List,Set)list和set是实现了collection接口的。List:(有序的collection)可以允许重复的对象。 可以插入多个null元素。 是一个有序容器,保持了每个元素的插入顺序,输出的顺序就是插入的顺序。 常用的实现类有ArrayList、LinkedList 和 Vector。ArrayList 最为流行,它提供了使用索引的随意访问,而 Linked.

2020-09-12 16:55:05 63

原创 HTTP和HTTPS的区别,以及HTTPS有什么缺点

HTTP协议和HTTPS协议区别如下:1)HTTP协议是以明文的方式在网络中传输数据,而HTTPS协议传输的数据则是经过TLS加密后的,HTTPS具有更高的安全性2)HTTPS在TCP三次握手阶段之后,还需要进行SSL 的handshake,协商加密使用的对称加密密钥3)HTTPS协议需要服务端申请证书,浏览器端安装对应的根证书4)HTTP协议端口是80,HTTPS协议端口是443HTTPS优点:HTTPS传输数据过程中使用密钥进行加密,所以安全性更高HTTPS协议可以认证用户和

2020-09-12 16:26:01 1107

原创 2020/09/12三次握手四次挥手

1.客户端向服务器发起数据请求,客户端得到数据后,首先发出fin包,借宿该请求,已知客户端得到的数据包的seq是1,ack是130,数据内容长度为300,那么四次挥手的最后一个ack包的seq和ack是?请画出三次握手和四次挥手的示意图 为什么连接的时候是三次握手? 什么是半连接队列? ISN(Initial Sequence Number)是固定的吗? 三次握手过程中可以携带数据吗? 如果第三次握手丢失了,客户端服务端会如何处理? SYN攻击是什么? 挥手为什么需要四次? 四次挥手释放

2020-09-12 16:16:37 228

原创 2020/09/11数据库三大范式

三范式1NF:字段不可分;2NF:有主键,非主键字段依赖主键;3NF:非主键字段不能相互依赖;解释:1NF:原子性 字段不可再分,否则就不是关系数据库;2NF:唯一性 一个表只说明一个事物;3NF:每列都与主键有直接关系,不存在传递依赖;...

2020-09-11 10:56:05 104

原创 2020/09/10抽象类和接口

类描述的是 这个东西是什么(强调所属)?包含了静态属性,静态行为 ,属性和行为。而接口 描述的它能做什么事儿(强调行为)? 只是 静态常量属性 和 行为1. 相同点两者都是抽象类,都不能实例化。 interface实现类及abstrct class的子类都必须要实现已经声明的抽象方法。2. 不同点 interface需要实现,要用implements,而abstract class需要继承,要用extends。 一个类可以实现多个interface,但一个类只能继承一..

2020-09-10 20:24:11 73

原创 2020/09/10 Collection 和 Collections的区别

Collection是集合类的上级接口,继承与他的接口主要有Set 和List.Collections是针对集合类的一个帮助类,他提供一系列静态方法实现对各种集合的搜索、排序、线程安全化等操作。

2020-09-10 15:01:37 112

原创 2020/09/10进程与线程

进程是资源分配的最小单位,线程是CPU调度的最小单位做个简单的比喻:进程=火车,线程=车厢线程在进程下行进(单纯的车厢无法运行) 一个进程可以包含多个线程(一辆火车可以有多个车厢) 不同进程间数据很难共享(一辆火车上的乘客很难换到另外一辆火车,比如站点换乘) 同一进程下不同线程间数据很易共享(A车厢换到B车厢很容易) 进程要比线程消耗更多的计算机资源(采用多列火车相比多个车厢更耗资源) 进程间不会相互影响,一个线程挂掉将导致整个进程挂掉(一列火车不会影响到另外一列火车,但是如果一列火车上中

2020-09-10 10:15:43 101

原创 2020/09/09(数据库)事务面向

事务:是数据库操作的最小工作单元,是用户定义的一系列数据库操作,这些操作作为一个整体一起向系统提交,要么都执行、要么都不执行;事务是一组不可再分割的工作逻辑单元;事务的使用:begin transaction commit/rollbackbegin transaction 表示事务的开启标记commit 表示事务的提交操作,表示该事务的结束,此时将事务中处理的数据刷到磁盘中物理数据库磁盘中去。rollback 表示事务的回滚操作,表示事务异常结束,此时将事务中已经执行的操作撤销回原来的状态。

2020-09-09 20:46:50 330

原创 2020/09/06 HashTable, HashMap区别,Sleep()和 Wait()区别, Synchronized 和 Lock区别

一、HashTable, HashMap,ConcurrentHashMap区别1、HashTable 线程同步,key,value 值均不允许为空;HashMap 非线程同步, key,value 均可为空,HashTable 因为线程安全的额外开销会造成性能下降,而 HashMap 由于线程不安全,在多线程的情况下,一般要加锁,或者使用 Collections.synchronizedMap()来创建线程安全的对象。 2、HashTable 继承的父类是 Dictionary,而 HashMa

2020-09-08 16:57:07 107

icp算法vs工程,icpPointtoPlane

icp算法的vs工程,icpPointtoPlane,解压后运行.sln文件,调试选择release,运行请按ctrl+F5

2020-07-15

xftp安装包,打开即可

打开即可,打开即可,可以使用哒

2020-07-01

西南科技大学网络编程期末试题

西南科技大学网络编程期末试题,信息工程学院,收集不易

2019-03-29

西南科技大学单片机期末试题

西南科技大学单片机期末试题,信息工程学院,收集不易单片机

2019-03-29

java实验所有代码

java实验

2016-05-09

数据库与navicat

数据库与navicat

2016-05-09

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

TA关注的人

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