自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Java实例化对象的三种方式及区别

在Java中实例化一个类的对象,通常有以下三种方式:1. Object类中的getClass()方法取得Class类对象。public static void main(String[] args) { Date date = new Date(); Class class1 = date.getClass(); System.out.println(class1);...

2019-08-29 21:28:44 1109 1

原创 项目:网页聊天室

注册界面:登录界面:上线通知功能:用户群聊功能:

2019-08-28 21:53:15 1225

原创 JDBC访问数据库常规步骤

项目中用到了JDBC,整理一下JDBC访问数据库常规步骤,方便以后查阅:Java数据库连接(java DataBase Connectivity),又称JDBC,用于在Java程序中实现数据库操作功能,它提供了执行SQL语句,访问各种数据库的方法,并为各种不同的数据库提供统一的操作接口,java.sql包中包含了JDBC操作数据库的所有类。通过JDBC访问数据库一般有如下步骤:1. 加载JDB...

2019-08-27 19:30:11 1011

原创 数据结构——顺序表

在说顺序表之前,先认识一下线性表(Linear List)。线性表称为有序表(Ordered List),是数学概念应用在计算机科学中一种基本的数据结构。线性表数据元素可以是任何一种类型,不过对于同一线性表的每一个元素都必须属于同一类型。从数据在物理内存存储形式上线性表可以分为: 顺序表和链式表,本文主要做了顺序表相关操作的整理。顺序表:顺序表是在计算机内存中以数组的形式保存的线性表,...

2019-08-25 23:03:05 612

原创 Java多线程的实现方式(继承Thread/实现Runnable/实现Callable/线程池)

方式1、继承Thread类继承Thread,覆写该类中的run()方法,run()方法中即为该线程要实现的具体业务。public class NewThread1 extends Thread{ private String title; public NewThread1(String title){ this.title = title; }...

2019-08-22 13:19:47 519

原创 线程池的实现原理及使用

开发中使用线程池的几个优势:降低资源消耗:通过重复利用已创建的线程降低线程创建和销毁带来的消耗。提高响应速度:当任务到达时,任务可以不需要等待线程创建就能立即执行。提高线程可管理性:使用线程池可以统一进行线程分配,调度和监控。线程池实现原理:线程池的一个核心类:public ThreadPoolExecutor(int corePoolSize, int maxim...

2019-08-22 13:16:05 167

原创 常用排序算法总结

排序的分类:根据现有的排序算法来看,排序⼤致分为两类:内部排序:如果整个排序过程不需要借助外部存储器(如磁盘),所有排序操作都在内存中完成,这种排序称之为内部排序。外部排序:如果参与排序的数据元素⾮常多,数据量⾮常⼤,计算机⽆法把整个排序过程放在内存中完成,必须借助外部存储器(如磁盘),这种排序就称之为外部排序。通常说的排序都是指内部排序,⽽不是外部排序。个人总结了一些基本排序算法,...

2019-08-19 16:31:45 199

原创 排序——归并排序

归并排序(MERGE-SORT)是建立在归并操作上的一种有效的排序算法,该算法是采用分治法(Divide and Conquer)的一个非常典型的应用。将已有序的子序列合并,得到完全有序的序列;即先使每个子序列有序,再使子序列段间有序。若将两个有序表合并成一个有序表,称为二路归并。

2019-08-18 23:22:10 328

原创 排序——快速排序(递归写法/非递归写法)及其优化

快速排序(Quicksort),又称划分交换排序(partition-exchange sort),简称快排。它的原理和冒泡排序法一样都是用交换的方式,不过他会在数据中找到一个虚拟的中间值,把小于中间值的数据放在左边,把大于中间值的数据放在右边,再以同样的方式分别处理两边的数据,直到完成排序为止。执行流程为:递归:先以第一个值为基准值,设置其索引为par,将这个值放入一个临时变量tmp中,...

2019-08-18 19:25:53 476

原创 排序——简单的快速排序流程(带图例演示)

快速排序(Quicksort),又称划分交换排序(partition-exchange sort),简称快排。它的原理和冒泡排序法一样都是用交换的方式,不过他会在数据中找到一个虚拟的中间值,把小于中间值的数据放在左边,把大于中间值的数据放在右边,再以同样的方式分别处理两边的数据,直到完成排序为止。执行流程为:先以第一个值为基准值,设置其索引为par,将这个值放入一个临时变量tmp中,防止在后...

2019-08-18 17:56:14 10639 1

原创 排序——堆排序

堆排序(Heapsort)是指利用堆这种数据结构所设计的一种排序算法。堆积是一个近似完全二叉树的结构,并同时满足堆积的性质:即子结点的键值或索引总是小于(或者大于)它的父节点。堆排序是选择排序的改进版,它可以减少选择排序法中的比较次数,进而减少排序时间。堆积排序用到了二叉树的技巧,它利用堆积数来完成排序。堆积是一种特殊的二叉树,可分为最大堆积树和最小堆积树:最大堆积树满足三个条件:是一个完...

2019-08-17 21:06:24 560

原创 排序——希尔(Shell)排序及其与直接插入排序的对比

简介:希尔(Shell)排序法是D.L.Shell在1959年发明的一种排序法,是第⼀个突破O(n2)的排序算法,是简单插⼊排序的改进版,其排序算法类似于简单插入排序,但它可以减少数据搬移的次数。希尔排序⼜叫缩⼩增量排序。排序原则:将数据区分成特定间隔的几个小分块,以插入排序法排完区块内的数据后再逐渐减少间隔的距离。...

2019-08-17 18:43:09 1163

原创 排序——插入排序的优化:折半(二分)插入排序

折半插入排序(Binary Insertion Sort),也叫二分插入排序,是直接插入排序的一种改进,关于直接插入排序,可以点击【传送门】排序——直接插入排序查看,这里主要总结一下折半插入排序。折半查找要求线性表必须采用顺序存储结构,而且表中元素按关键字有序排列。以一个大小为n的数组arr为例,折半插入排序的基本思路为:将未排序数组可以看做已排序区间[0,i-1]和未排序区间[i,n-1...

2019-08-17 16:47:59 426

原创 排序——直接插入排序

排序方式:通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。插⼊排序通常采用in-place在数组上实现,这种方法首先将第一个元素看做已排序区间,从未排序区间依次取出数据从已排序区间末端开始与已排序区间进行对比,将取出的元素插入到合适的位置。例:对{6,4,9,8,3}数组进行排序原始数据:6 4 9 8 3第一次排序后:4 6 9 8 3第二次排序后:4...

2019-08-17 15:43:23 222

原创 排序——选择排序

排序方式:每一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置若将数据利用选择排序进行由小到大排序,有两种方式:第一种方式是每次扫描将最小值找出来放在第一位。同理也可以每次扫描将做大元素找出来放在最后一个位置。第一种方式的方法为由第一个位置的数据开始,先将第一个位置的数据看做整组数据最小的元素,依次与后面的元素进行比较,若在后面的数据中找到比第一个位置的数据小的,则更新...

2019-08-17 12:27:23 278

原创 排序——冒泡排序及其优化

排序方式:由第一个元素开始,比较相邻元素的大小,若大小顺序有误,则对调后再进行下一个元素的比较。如此扫描一次后就可以确保最后一个元素处于正确的顺序。接着再进行第二次扫描,直到完成所有元素的排序关系为止。例:对{6,4,9,8,3}数组进行排序原始数据:6 4 9 8 3第一次扫描后:4 6 8 3 9第二次扫描后:4 6 3 8 9第三次扫描后:4 3 6 8 9第四次扫描后:3 ...

2019-08-17 10:55:58 197

原创 Js正则表达式

Js正则表达式正则表达式常用语法:范围的:X[0-9a-zA-Z] :X字符是数字或者字母(不区分大小写)X[0-9]:X字符是任意的数字X[a-zA-Z]:字母的数量词:X+ :X字符出现了一次或多次X?:X字符出现0次或1次X*:X字符串出现0次或多次X{n}:X字符恰好出现n次X{n,}:X字符至少出现n次X{n,m}:X字符至少出现n次但是不超过m次邮箱:...

2019-08-15 00:09:54 201

原创 Js的DOM编程获取标签对象的三种方式

Js的DOM编程获取标签对象的三种方式一.DOM使用:1.通过特定方法/特定属性控制标签对象2.通过标签独享更改标签里面的属性火焰石,展示效果二. 三种方式获取标签对象1. 通过document的集合属性获取1.1 document常用属性:all集合属性:获取页面中所有的标签对象,返回的集合列表forms:获取页面中所有的form标签对象,返回集合列表mages:获取页面中...

2019-08-15 00:08:46 2518

原创 BOM(浏览器窗口)模型四个对象

BOM(浏览器窗口)模型四个对象浏览器的js引擎在解析html页面的时候,将页面主要分割成四个部分:window对象,location对象,history对象,screen对象1.window对象:顶级对象,频繁调用,一般忽略不写1.1 打开窗口的方法open(“url”,“打开指定url的方式”,“其他的参数-页面的宽高”)1.2 和定时器相关的方法反复执行的定时器:setIn...

2019-08-15 00:07:15 1295

原创 项目:性能测试框架

该项目是模拟JMH(Java Microbenchmark Harness)的基准测试框架,自己实现了一个性能测试框架,用于测试系统在特定负载的情况下,相应时间和稳定性的表现情况。该项目中以下列两个测试为例:测试String类中直接使用“+”字符串相加与StringBuilder的append()方法相加的效率区别测试自己实现的归并排序,快速排序与Arrays.sort的效率区别代码目录...

2019-08-13 17:32:14 566

原创 Js中自定义对象四种方式

Js中自定义对象四种方式1 类似JAVA有参构造方式:1.定义对象:function 对象(属性[age]){ 追加属性; 如(this.age = age)[this代表当前对象的地址值的引用] 追加方法; 如(this.hello = function(){ alter("Hello!"); }) }2.创建对象:v...

2019-08-13 11:40:26 1641

原创 Js原型对象的作用及应用

Js原型对象的作用及应用原型对象:Prototype如果在内置对象创建了一个原型对象,那么原型对象中追加的方法会自动追击到内置对象中作用:在js的所有内置对象中都存在prototype原型属性在js的内置对象的原型属性中,追加方法,那么该方法会自动追加到内置对象中js的原型属性最终的目的是给内置对象追加方法使用方式:function Array(){ //创建一...

2019-08-13 11:38:36 1688

原创 MySQL学习笔记-表的约束

关于学习MySQL整理的一个关于表的约束的笔记:表的约束字段受数据类型约束,但数据类型约束较单一,需要以下额外的约束,更好地保证数据的合法性,从业务逻辑保证数据的正确性1.空属性NULL: 空 not null :非空2.默认值default3.列描述comment ,无实际含义,专门用来描述字段,会根据表创建语句保存4.zerofill格式化输出alt...

2019-08-13 00:09:36 203

原创 CSS学习笔记-CSS文本,列表,边框,背景属性

一篇学习CSS基础的学习笔记:CSS文本,列表,边框,背景属性1. css常用文本属性:属性描述color文本颜色text-decoration向文本添加修饰letter-spacing增加或减少字符间距word-spacing增加或减少字间距direction设置文本方向text-decoration向文本添加修饰lett...

2019-08-13 00:02:48 285

原创 JavaScript学习笔记1

JavaScript学习笔记1一篇学习JavaScript基础整理的小知识点:包含基础的:Js的引用方式,常用函数,变量和数据类型,类型转换函数,运算符,流程控制语句1. 引用方式:1.内部Js方式​ 在head标签体指定script标签​ 弊端:js代码与html代码混合使用2.外部js方式​ a.单独创建独立的以.js结尾的文件​ b.导入js文件:在...

2019-08-12 23:54:55 101

原创 CSS引入方式及常用选择器

CSS引入方式及常用选择器:CSS功能:给HTML标签添加修饰1.三种引入方式:1.1.行内样式:在标签在指定style属性,书写样式style="css样式属性1:css样式属性值1;css样式属性2:css样式属性值2"弊端:1.一次只能控制一个标签2.样式代码和HTML代码混合使用,不利于后期管理1.2.内部(内联)样式:在head标签体中指定style标签格式:选择器...

2019-08-10 23:13:46 150

原创 HTML表单标签,框架标签

HTML表单标签formactiom:向后台服务器提交的地址URL(访问服务器)method:向后台的提交方式应用场景注册,登录等表单标签:form属性:1.action:提交后台地址2.method:提交方式3.js时间编程:onsubmit事件:表示提交是否成功,提交成功返回true,否则返回false常用:get,postget提交方式(浏览器默认):1.将用户信...

2019-08-10 23:12:05 360

原创 MySQL常用数据类型

数据类型1.常用int(unsigned) :带符号是-231次方——231-1,无符号是232-1char(size) :固定长度字符串,最大为255varchar(size) :可变长度字符串,最大长度65535;varchar长度为0-65535,但有1-3个字节来记录数据大小,因此有效字节数是65532utf中一个字符占用三个字节(参数n的最大值为65532/3...

2019-08-09 22:39:49 102

原创 MySQL表的操作

表操表1.创建表:cerate table 表名{ 列名 列类型, ...}character set 字符集 collate 校验规则 engine 存储引擎;若字符集和校验规则未指定,这以所在数据库的字符集和校验规则为准例:create table stu{ id int, name varchar(20) comment '用户名', pa...

2019-08-09 22:34:29 103

原创 MySQL库的操作

库操作1.创建数据库:create database 数据库名;指定字符集与校验规则创建数据库:create database name [指定数据库使用的字符集,[指定数据库使用的校验规则]]默认使用字符集为:utf8默认校验规则为:utf8_general_ci例:创建使用utf8字符集的数据库:create database db charset = utf8;创建适...

2019-08-09 22:07:27 116

原创 HTML常用文本,图片,超链接,表格标签及转义字符整理

HTML文本,图片,超链接,表格标签及转义字符文本标签1. 标题标签:<h1></h1>~<h6></h6>2. 段落标签:<p></p>3. 换行标签:<br/>4. 引用文本标签:<q></q> 5. 段落缩进标签:<blockquote></bloc...

2019-08-08 22:43:43 391

原创 关于TCP三次握手和四次挥手

正常情况下,TCP建立连接需要进行三次握手,断开连接需要四次挥手:1. 三次握手建立连接:建立连接请求都是由客户端主动向服务端发起连接前准备:服务端(在客户端之前启动): 创建套接字(Socket结构体 sip(地址) sport(端口信息)) 为套接字绑定地址信息 开始监听(LISTEN状态) 客户端: 创建套接字(Socket结构体 sip(...

2019-08-06 14:26:17 212

原创 网络传输基本流程分析

我个人对网络通信中信息传输流程的理解如下:1.网络通信TCP/IP五层协议分层为:应用层:负责应用程序之间的数据沟通传输层:负责端口之间的数据传输网络层:负责地址管理与路由选择链路层:负责相邻设备间的数据传输物理层:负责光电信号的传输网络通信中,用户数据从应用层到物理层需要在每一层为数据添加一个头部(这个过程称作“数据封装”),这个头部包含这段信息的来源与目的,长度等信息。数据到...

2019-08-05 20:43:16 614

原创 MySQL语言分类及存储引擎

1. 数据库存储相对于文件存储的优点:文件存储的安全性问题文件存储不利于数据查询和管理文件存储不利于存储海量数据文件存储在程序中控制不方便2. MySQL语言主要分为以下几类:DDL数据定义语言(定义对数据库对象(库,表,列,索引)的操作)代表指令:​ create——新建​ drop——删除​ alter——修改DML数据操纵语言(定义对数据库记录的操作)...

2019-08-03 11:55:49 170

原创 网络通信环境中的协议分层

网络通信环境中的协议分层:协议:通信双方数据格式的约定协议分层:协议的封装,在整个通信环境中使用起来更加的方便网络通信环境中的协议分层OSI七层参考模型:应用层 ——> 表示层 ——> 会话层 ——> 传输层 ——> 网络层 ——>链路层 ——> 物理层1.应用层:负责应用程序之间的数据沟通;常见协议有HTTP (超文本传输协议) / FTP ...

2019-08-02 23:02:28 793

原创 Java:String类方法整理

String类方法1.字符与字符串1.1 将字符数字中所有内容变为字符串:public String(char value[]) //——构造方法1.2 将部分字符数组的内容变为字符串:public String(char value[],int offset,int count) //——构造方法//在value[ ]数组中,取索引为 offset 位置开始的 count ...

2019-07-22 13:42:43 226

原创 HTML简介及部分常用标签

一、HTML简介1)HTML简介HTML是⽤于创建⽹⻚的语⾔。我们通过使⽤HTML标记标签创建html⽂档来创建⽹⻚。 HTML代表超⽂本标记语⾔。 HTML是⼀种标记语⾔,它具有标记标签的集合。HTML标签是由尖括号括起来的词,如 , 。标签通常成对出现,例如 和 。⼀对中的第⼀个标签是开始标签;第⼆个标签是结束标签。在上⾯的示例中, 是开始标签,⽽是结束标签。我们还可以将开...

2019-05-19 14:15:30 290

原创 Java常用关键字总结

Java中常用的关键字有以下分类:访问控制private protected public类,方法和变量修饰符abstract class extends final implements interface native newstatic strictfp synchronized transient vo...

2019-05-17 09:50:07 635

原创 Java类和对象简介

类:一种共性的概念对象:一个具体的,可以使用的事物类相当于是一种新的数据类型,这个数据类型的实例就是相应的对象。类组成:属性/字段/数据成员(变量:描述每个对象的具体特点)方法/成员函数(操作的行为)定义一个类的语法:/*class 类名称{ 属性1; 属性2; 方法1(){} 方法2(){}}*/如:class Person{ ...

2019-05-15 09:09:34 254

原创 Java数据类型

Java数据类型分为基本数据类型和引用数据类型:基本数据类型:数值型 整型(默认值为0):byte,short,int,long 浮点型(默认值为0.0):double,float 字符型(默认值为‘\u0000’):char 布尔型(默认值为false):boolean引用数据类型(默认值为null):数组 类 接口基本数据类型总结基本类型 默认值...

2019-05-13 10:22:11 189

空空如也

空空如也

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

TA关注的人

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