自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 【踩坑记】安装quill时报错:Module not found: Error: Can't resolve 'quill' in 'XXXXXX'

问题安装quill时报错:解决方案方案一:// 在项目目录下重新安装(或是删除node_modules文件夹再重装)ng install方案二(推荐):// XXX即你需要安装的插件,此处是quill,同类报错仅需改变XXX后仍适用npm i XXX --save...

2019-07-10 10:17:47 4901

原创 Linux实操篇:进程管理

进程的基本介绍1)在LINUX中,每个执行的程序(代码)都称为一个进程。每一个进程都分配一个D号。2)每一个进程,都会对应一个父进程,而这个父进程可以复制多个子进程。例如www服务器。3)每个进程都可能以两种方式存在的。前台与后台,所谓前台进程就是用户目前的屏幕上可以进行操作的。后台进程则是实际在操作,但由于屏幕上无法看到的进程,通常使用后台方式执行。4)一般系统的服务都是以后台进程的方式...

2019-06-02 15:29:23 356

原创 Linux实操篇:组管理和权限管理

组管理Linux组基本介绍在linux中的每个用户必须属于一个组,不能独立于组外。在linux中每个文件有所有者、所在组、其它组的概念。文件/目录所有者一般为文件的创建者,谁创建了该文件,就自然的成为该文件的所有者。1、ls-ahl 指令查看文件的所有者实例创建一个组police,再创建一个用户tom,将tom放在police组,然后使用tom来创建一个文件ok.txt2、c...

2019-06-02 10:35:02 321

原创 Linux实操篇:日期类、查找类、压缩类

时间日期类指令1、date指令-显示当前日期基本语法date(功能描述:显示当前时间)date+9%Y(功能描述:显示当前年份)date+%m(功能描述:显示当前月份)date+%d(功能描述:显示当前是哪一天)date"+%Y-%m-%d%H:%M:%S"(功能描述:显示年月日时分秒)实例一:显示当前时间信息实例二:显示当前时间年月日时分秒2、date指令-设置日期...

2019-06-02 10:00:23 207

原创 聊天室系列03:群聊与私聊 & OOP封装

概述使用TCP的Socket实现一个聊天室服务器端:一个线程专门发送消息,一个线程专门接受消息。客户端:一个线程专门发送消息,一个线程专门接受消息。1、群聊:重点在于创建一个容器,搭建一个消息转发器,最终实现群聊的功能。2、私聊:模拟报文,分析数据,转发给特定的某个人。3、注意:没有请求和响应的模式,每个客户端发送和接收数据各有一个线程去实现,客户间彼此发言不受干扰。一...

2019-05-23 14:32:40 521

原创 聊天室系列02:用UDP和TCP编程实现双人聊天、文件传输、多人登录

一、Socket编程 UDP基本步骤概述1、使用基于UDP协议的Socket网络编程实现2、不需要利用I0流实现数据的传输3、每个数据发送单元被统一封装成数据包的方式,发送方将数据包发送到网络中,数据包在网络中去寻找他的目的地DatagramSocket:用于发送或接受数据包的套接字DatagramPacket:数据包发送数据一般不超过60K,比如微信发消息实例一:自动发送指定...

2019-05-23 13:44:06 3238

原创 如何又简单又高效地解决线程安全问题?

一、什么是线程同步?处理多线程问题时,多个线程访问同一个对象,并且某些线程还想修改这个对象。这时候, 我们就需要用到“线程同步” 。线程同步其实就是一种等待机制,多个需要同时访问此对象的线程进入这个对象的等待池形成队列,等待前面的线程使用完毕后,下一个线程再使用。二、什么是锁机制?由于同一进程的多个线程共享同一块存储空间,在带来方便的同时,也带来了访问冲突的问题。为了保证数据在方法中被访...

2019-05-20 02:00:25 500

原创 如何让线程停下来?

本篇讲述一个终止线程的小技巧,篇幅虽短,作用很大,希望给大家带来帮助~概述终止线程:1、线程正常执行完毕2、外部干涉,加入标识位3、不要使用 stop destroy模拟实现public class TerminateThread implements Runnable{ //1、加入标识,标识线程体是否能够执行 private boolean flag = true...

2019-05-20 01:26:35 539

原创 线程使用的六大常用方法!

本篇讲述线程使用的六大常用方法:sleep()、join()、yield()、setDaemon()、setPriority () & getPriority()、getState()方法一:sleep()使线程停止运行一段时间,将处于阻塞状态如果调用了sleep方法之后,没有其他等待执行的线程,这个时候当前线程不会马上恢复执行!之前我们用sleep() 模拟了网络延时,可以放...

2019-05-20 01:17:45 1115

原创 Java设计模式之静态代理

本篇通过模拟结婚,和模拟12306抢票两个实例,了解静态代理设计模式的使用。概述1、公共接口:1、真实角色2、代理角色2、代理设计模式代理模式分为动态和静态。共享资源:一份资源可以有多个代理。发生并发时,要注意线程安全处理。实例一:模拟结婚1、完整代码public class StaticProxy { public static void main(String[] a...

2019-05-20 00:51:26 203

原创 线程的简化有4种方法,你都知道么?

本篇继续借用之前的代码,探究线程简化的方法,最终推出Lambda表达式简化方法的具体使用。方法一:静态内部类static class Test1 implements Runnable{ public void run(){ for(int i=0;i<20;i++){ System.out.println("一边听歌"); } }}方法二:局部内部类publi...

2019-05-20 00:38:49 230

原创 龟兔赛跑!!!

让我们来用线程的知识模拟一个有趣的龟兔赛跑游戏。比赛规则兔子与乌龟一起跑,每次步长都一样,兔子每跑40步就睡一会,谁先跑到100步,就获得胜利!Runnable实现public class Racer implements Runnable{ private String winner; //胜利者 public static void main(String[] args) { ...

2019-05-20 00:24:28 768

原创 初识线程,看线程实现的三种方法

一、概述什么是多线程?多线程是指多条路径同时进行,高效不用等待。这里的同时是短暂执行不同时间片的任务,只是看似同时。很多多线程是模拟出来的,真正的多线程是指有多个CPU,即多核,如服务器。如果是模拟出来的多线程,即一个CPU的情况下,在同一个时间点,CPU也只能执行一个代码,因为切换的很快,所有就有同时执行的错觉。什么是三高?高可用:数据不会出错高性能:体验好,延时低高并发:同时...

2019-05-19 23:59:24 238

原创 IO流技术:带你玩转数据流、对象流、打印流

一、数据流1、概述可以保留数据类型DataOutputStream & DataInputStream1、先写出后读取2、读取的顺序和写出的顺序保持一致还可以将ByteArrayOut/InputStream变成FileOut/InputStream2、代码实现public class DataTest { public static void main(Stri...

2019-05-18 20:08:32 272

原创 IO流技术:缓冲大法好,10行代码爬取网页

本篇介绍缓冲流和转换流的作用,最后结合在一起,实现一个爬取网页内容的小程序。一、缓冲流1、概述:Buffered…字节/字符缓冲流可以很大程度提高性能,虚拟机内部就有,默认缓冲区大小为8K,可以自己指定。不管怎么处理,底层都是节点流:文件节点流、字节数组节点流、网络流…可以直接释放BufferdInputStream2、实例:文件字符输出主程序:public static vo...

2019-05-18 19:08:53 526

原创 Java设计模式之装饰器

概述装饰的作用:不改变原来的代码,就可以实现新的功能GOF设计模式:设计复杂代码时用到的高内聚低耦合的方法论。1、抽象组件(接口、抽象父类):需要装饰的抽象对象2、具体组件:要装饰的对象3、抽象装饰类:包含了对抽象组件的引用,以及装饰着共有的方法4、具体装饰类:被装饰的对象1、实现一个放大器主程序public static void main(String[] args) ...

2019-05-18 18:32:52 191

原创 IO流技术:看资源释放的三种强大的封装方法 & 字节数组流的使用

本篇将紧接上篇,同样以实现文件拷贝为例,探讨字节数组流ByteArrayInputStream 和 ByteArrayOutputStream 的使用方法,以及如何对资源释放进行封装,使我们处理资源释放问题时更加便捷。一、概述文件存储在硬盘上,Java虚拟机无权访问,需要借助操作系统来访问和操作,并在操作完成后通知操作系统释放资源。而对于存有字节内容的字节数组,Java虚拟机可以直接访问。...

2019-05-18 16:57:46 868

原创 IO流技术:如何用Java实现文件拷贝功能 ?

四大抽象类FileInputStream通过字节方式读取文件,适合所有类型的文件(图像、视频等),全字符请考虑FileReaderFileOutStream通过字节的方式写出或追加数据到文件,适合所有类型的文件,全字符请考虑FileWriter1、理解操作流程1、创建源2、选择流3、传输操作:读和写4、释放资源代码public class IOTest1 { pu...

2019-05-16 23:17:30 343

原创 IO流技术:文件夹的创建、遍历、统计 | 编码解码实验

API说明mkdir() 、 mkdirs()创建目录,如果父目录链不存在一同创建list()下级名称listFiles()下级FilelistRoots()根路径一、创建目录mkdir() 确保上级目录存在mkdirs() 上级目录可以不存在代码public class DirDemo1 { public static ...

2019-05-16 14:34:57 231

原创 IO流技术:开篇概述、File对象构建与相关方法的使用

本篇包含开篇知识储备,API使用规则、如何构建File对象、以及相关方法的使用。会通过Java编码分析。一、开篇IO概述:即输入输出流,流动的即是数据,以二进制的形式呈现,即字节流。人对字符更敏感,我们也可操作字符流。字符流底层还是字节流,自动搜索了我们的码表。推荐组件:CommonsIO数据源:就是存储数据的地方,例如网站、服务器、数据库。我们操作的是存储数据的文件。其他:Ja...

2019-05-16 14:14:55 298

原创 Linux实操篇:文件目录类(下)

Linux进阶系列,包括各种实操演示,欢迎大家指点和交流。(图片略糊,有时间会重传)12、less指令less指令用来分屏查看文件内容,它的功能与more指令类似,但是比more指令更加强大,支持各种显示终端。less 指令在显示文件内容时,并不是-次将整个文件加载之后才显示,而是根据显示需要加载内容,对于显示大型文件具有较高的效率。基本语法less 要查看的文件实际案例采用 less...

2019-05-15 17:20:47 285

原创 Linux实操篇:文件目录类(上)

Linux进阶系列,包括各种实操演示,欢迎大家指点和交流。(图片略糊,有时间会重传)1、pwd指令基本语法pwd(功能描述:显示当前工作目录的绝对路径)实际案例显示当前工作目录的绝对路径2、ls指令基本语法ls [选项] [目录或者文件]常用选项-a:显示当前目录所有文件和目录,包括隐藏的-l:以列表的方式显示信息实际案例3、cd指令基本语法cd [参数] (...

2019-05-15 10:00:38 369

原创 Linux实操篇:用户管理

Linux进阶系列,包括各种实操演示,欢迎大家指点和交流。(图片略糊,有时间会重传)基本介绍Linux系统是-一个多用户多任务的操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请-一个账号,然后以这个账号的身份进入系统。Linux的用户需要至少要属于一个组。添加用户1、基本语法useradd [选项] 用户名2、实际案例添加一个用户xm3、补充当创...

2019-05-15 01:42:59 283

原创 Linux入门篇:初识文件系统,安装CentOS与使用VMtools

Linux进阶系列,包括各种实操演示,欢迎大家指点和交流。学习路线我个人认为学习linux流程为:第1阶段: linux 环境下的基本操作命令,包括文件操作命令(m mkdir chmod, chown)编辑工具使用(vi vim) linux用户管理(useradd userdel usermod)等第2阶段: linux 的各种配置(环境变量配置,网络配置,服务配置)第3阶段: l...

2019-05-15 00:57:36 328

原创 MySQL:经典操作大全,让你爱不释手

本篇主要整理MySQL常用命令与函数使用,是本人学习MySQL过程中的笔记和备忘录,同时分享出来供大家参考,希望给各位带来帮助。数据库的好处1、持久化数据到本地2、可以实现结构化查询,方便管理数据库相关概念1、DB:数据库,保存一组有组织的数据的容器2、DBMS:数据库管理系统,又称为数据库软件(产品),用于管理DB中的数据3、SQL:结构化查询语言,用于和DBMS通信的语言数据库...

2019-05-13 14:31:23 229

原创 聊天室系列01:基本概念准备,掌握InetAddress、InetSocketAddress、URL类的简单使用

本篇开始我们用Java语言,一步一步去编写一个简单的聊天室,实现单人私聊、多人群聊、文件发送等功能。聊天室系列第一篇,主要概括相关知识,用Java去实现相关操作,其中包括:网络模型、TCP/IP协议概念;IP类、端口类、URL类的相关方法使用。一、开篇1、网络首先我们要明白每个通讯设备都是一个节点,多个节点联系成了网络。且每个设备都有它的IP地址,从公网到内网一 一区分。我们用IP地址定位一...

2019-05-13 10:20:06 759

原创 python:星座与十二生肖_看序列、操作符与简单语句的使用

我们通过存取星座和十二生肖的操作,学习和掌握序列、操作符与简单语句的使用。以下分为三个部分:内容整理和两个实例(十二生肖、星座查询)。内容整理序列字符串:“abcd”链表:[0,“abcd”]元组:(“abc”,“def”)ps:python中单双引号不区分序列的基本操作成员关系操作符: 对象[not]in序列连接操作符: 序列+序列重复操作符: 序...

2019-05-06 20:00:36 7744

原创 时间与空间复杂度分析

我们用2W1H方法,来介绍简单的时间与空间复杂度分析。并且了解和掌握最好情况时间复杂度、最坏情况时间复杂度、均摊时间复杂度的分析。What复杂度包括时间复杂度和空间复杂度,分别用来衡量代码的执行效率、以及对应的内存消耗程度。Why不同于性能测试,复杂度分析成本低,易操作,不依赖执行的环境。掌握复杂度的分析,将能编写出性能更优的代码,有利于降低系统开发和维护的成本。此外,还能提升自己分析复杂...

2019-04-26 19:26:45 261

原创 UI界面重绘系列(下):接口和构造器的探讨

我们在UI界面重绘系列(一)中,探讨了类与对象、继承的关系、方法重写;今天我们来看看接口在重绘中的使用。并探讨接口和构造器的相关知识,补充一些之前未聊到的内容。Java中类与接口都保存在 .java 结尾的文件中,文件名使用相同的类名或是接口名。作为抽象类型的接口,它没有构造方法,只包含抽象方法,一个接口可以有多个方法。并且除了 static 和 final 变量,接口不能包含其他成员变量。...

2019-04-17 16:05:38 446

原创 UI界面重绘系列(上):类的继承和方法重写

本篇将探讨Java UI界面被改变时,图形的保存和重绘功能的具体实现,以及在此过程中,类的继承和方法重写的原理。一、界面重绘功能的实现1、实现画板功能我们想要创建一个窗体,窗体内包含两个按钮,分别点击对应的按钮便可实现绘制不同图形的功能。这里我们来完成直线与矩形框的绘制。1)界面显示类我们需要创建一个顶级容器类,并创建显示的方法。在容器中添加按钮与监听器对象,具体代码如下:public...

2019-04-15 18:47:00 726

原创 混沌与分形(一):谢尔宾斯基三角形与门格海绵

研究混沌运动,少不了对分形理论的探讨。分形:通常被定义为“一个粗糙或零碎的几何形状,可以分成数个部分,且每一部分都(至少近似地)是整体缩小后的形状”,即具有自相似的性质。本篇将从一维过度到三维介绍分形图案的产生,一维类比康托尔集直线三等分的生成,此处比较简单我们不过多讨论,我们重点分析如何通过使用Java语言,实现Sierpinski和Menger sponge分形图案的过程(多图)。谢尔宾斯...

2019-04-04 12:31:55 5273

空空如也

空空如也

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

TA关注的人

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