自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(39)
  • 资源 (28)
  • 收藏
  • 关注

原创 147.synchronized性能分析

对 146.synchronized方法与块中使用synchronized方法,使抢票代码线程安全—改造成块public void get() { /* * 注意如果是锁ticketNums是不能锁住的 * 因为synchronized锁的是类类型,如果将int的ticketNums强转为Integer对象 * 强转之后的对象是一直变化的因此不能锁住 */ if(ticketNums <= 0) { flag = false; return; } synchroni.

2020-09-30 18:57:14 228

原创 146.synchronized同步方法与块

将之前写的线程不安全的web12306模拟抢票代码,引入线程安全 1的处理办法package zy.thread;public class unsafeWeb12306 implements Runnable{ private boolean flag = true; private int ticketNums = 10; public void run() { while(flag) { get(); } } public void get() { if(tic.

2020-09-30 18:56:43 1992

原创 145.线程同步

线程同步多个线程访问同一个对象时,需要用到线程同步,线程同步的本质是一种等待机制,多个需要同时访问此对象的线程进入这个对象的等待池形成队列,等待前面的线程使用完毕后,下一个线程再使用。由于同一进程的多个线程共享同一块存储空间,在带来方便的同时,也带来了访问冲突的问题。为了保证数据在方法中被访问时的正确性,在访问时加入锁机制(synchronized),当一个线程获得对象的排它锁,独占资源,其他线程必须等待,使用后释放锁即可。存在以下问题:一个线程持有锁会导致其它所有需要此锁的线程挂起;在多线程竞.

2020-09-30 18:56:09 152

原创 144.daemon守护线程

线程分为用户线程 1和守护线程 2,虚拟机不用等待守护线程执行完毕将普通线程设置成为守护线程package zy.thread;public class daemonThread { public static void main(String[] args) { god g = new god(); person p = new person(); g.setDaemon(true); //将上帝线程设置成守护线程 g.start(); p.start(); }}c.

2020-09-30 16:24:46 296

原创 143.线程优先级

Thread类中定义了三个整型静态成员变量MAX_PRIORITY:10 1MIN_PRIORITY:1 2NORM_PRIORITY:5 3创建的线程默认优先级是NORM_PRIORITY优先级不代表线程执行的先后顺序,而是指分配到cpu资源的概率设置优先级方法package zy.thread;public class priorityTest { public static void main(String[] args) { System.out.println(Th.

2020-09-30 16:24:15 302

原创 142.观察线程状态

Thread对线程状态定义了常量标识NEW 1RUNNABLE 2:调用start方法进入就绪状态或者正在运行状态BLOCKED 3:IO和JUC的锁定WAITING 4:sleep、join方法TIMED_WAITING 5:TERMINATED 6state获取线程状态package zy.thread;import java.lang.Thread.State;public class allState { public static void main(String[] .

2020-09-30 16:23:46 143

原创 141.线程等待join

join合并线程,其它线程阻塞,待此线程 1执行完成后,再执行其它线程package zy.thread;/* * join:合并线程、插队线程 */public class blockedJoin { public static void main(String[] args) throws InterruptedException { Thread t = new Thread(()->{ for(int i=0; i<10; ++i) { System.ou.

2020-09-30 16:22:47 119

原创 140.yield礼让,从运行直接进入就绪

礼让线程,让当前正在执行的线程暂停 1yield的例子package zy.thread;public class yieldDemo { public static void main(String[] args) { yield y = new yield(); new Thread(y, "a").start(); new Thread(y, "b").start(); }}class yield implements Runnable{ @Override pu.

2020-09-30 14:01:22 147

原创 138.线程终止

查看APi,终止线程的stop方法是不安全的,建议使用标志变量来终止线程Many uses of stop should be replaced by code that simply modifies some variable to indicate that the target thread should stop running.下面我们就通过一个boolean型变量来演示一下线程终止package zy.thread;public class terminate implements.

2020-09-29 12:02:40 169

原创 137.线程状态

新生状态每个线程都有自己的工作空间,线程对象一旦创建就具有自己的工作空间就绪状态进入就绪状态 1并不意味着立刻执行,而是等待CPU调度进入就绪状态的四种原因:调用start方法进入就绪状态阻塞事件解出调用yield方法,避免线程占用太多cpu资源Jvm从本地线程切换到其他线程,则当前线程进入就绪状态阻塞状态注意阻塞状态是有可能占用资源的进入就绪状态的四种原因:调用sleep,持续占用资源调用wait,不使用的资源会分配给其它线程join等待其它..

2020-09-29 11:25:42 134

原创 136.JDk8增加的新特性Lambda,简化线程

希腊字母表中排序第十一位的字母,英文是Lambda,可以避免匿名内部类定义过多,其实质属于函数式编程的概念我们对 133.实现Runnable接口实现多线程文章中实现Runnable的代码进行改造首先我们可以给要实现多线程的类提供一个实现Runnable了接口的内部类,来实现多线程package yzy.cn;public class lambdaThread01{ /* * 我们可以给要实现多线程的类提供一个实现Runnable了接口的内部类,来实现多线程 */ //静态内部.

2020-09-27 16:23:27 320

原创 135.静态代理设计模式

以婚礼的主角和婚庆公司为例做一个代理设计模式的演示package yzy.cn;/* * 静态代理,真实角色和代理角色都得实现相同的接口 */public class staticProxy { public static void main(String[] args) { new weddingCompany(new yourSelf()).happyMarry(); }}interface Marry{ void happyMarry();}//真实角色class y.

2020-09-27 16:22:07 128

原创 134.高级并发编程Juc实现Callable接口实现多线程

高级并发编程Juc 1实现Callable接口实现多线程,这是除了继承Thread类和实现Runnable方法的第三种方式,入门阶段只做了解即可package yzy.cn;import java.util.concurrent.Callable;import java.util.concurrent.ExecutionException;import java.util.concurrent.ExecutorService;import java.util.concurrent.Execut.

2020-09-23 16:33:20 314

原创 133.实现Runnable接口实现多线程

实现Runnable实现多线程代码实例:package yzy.cn;public class implementRunnable implements Runnable{ private int nums; @Override public void run() { for(int i=0; i<nums; ++i) System.out.println("singing"); } public implementRunnable(int nums) { sup.

2020-09-22 21:13:22 490

原创 Java Documention

jdkSE1.8中文版.CHMjavaSE8.chmjdk-11.0.8 docsjdk-13docsjdk-14.0.2docs.chm后缀的文件可以直接使用下载的rar压缩包解压后进入目录,双击index.html就可以大快朵颐了

2020-09-21 22:09:27 185

原创 130.common-io拷贝操作

对于第三方的jar使用,请多查看官方文档:作者使用的commons-io-2.8.0官方文档下载传送门作者使用的commons-io-2.8.0下载传送门FileUtils对文件拷贝、IOUtils对URl拷贝package yzy.commons;import java.io.File;import java.io.IOException;import java.net.URL;import org.apache.commons.io.FileUtils;import org.ap.

2020-09-21 20:52:01 330

原创 129.common-io核心操作

使用第三方的jar时Eclipse无法查看源码请往下看:如果摁住Ctrl左键单击FileUtils包下的sizeOf方法出现Source not found请按下图操作统计文件及目录大小package yzy.commons;import java.io.File;import org.apache.commons.io.FileUtils;/* * 统计文件夹大小 * 目录大小 */public class commonsIOtest01 { public static.

2020-09-21 20:42:31 140

原创 129.common-io核心操作

如果摁住Ctrl左键单击FileUtils包下的sizeOf方法出现Source not found请按下图操作统计文件及目录大小package yzy.commons;import java.io.File;import org.apache.commons.io.FileUtils;/* * 统计文件夹大小 * 目录大小 */public class commonsIOtest01 { public static void main(String[] args) { ..

2020-09-21 19:37:37 192

原创 128.common-io环境搭建

Apache1的commons下载:IO_common下载传送门1.将下载 2的commons-io压缩包解压2.解压后得到如下文件docs是官方解释文档3.要使用第三方jar就需要在Java工程中新建一个lib文件夹4.将箭头指向的两个jar压缩包复制到工程新建的lib文件夹下5.放好之后如下图6.右键选中commons-io添加构建路径到工程中,操作如下图添加路径成功的话,Referenced Libraries会增加刚才添加路径的commons-io,如下图:然.

2020-09-21 13:28:45 355

原创 131.多线程概念

多线程在现实生活中的体现,电商网站的秒杀抢购 1、春运购买火车票 2、还有多线程在游戏中应用最广泛多线程性能的衡量标准:高可用 3、高性能 4、高并发 5线程是进程的执行流程,一个进程至少有一个线程进程线程的区别区别进程线程根本区别作为资源分配的单位调度和执行的单位开销每个进程都有独立的代码和数据空间(进程上下文),进程间的切换会有较大的开销。线程可以看成时轻里级的进程,同一类线程共享代码和数据空间,每个线程有独立的运行栈和程序计数器(PC),线程切换的开销小。.

2020-09-21 11:03:47 145

原创 132.继承Thread实现多线程

Thread先写一个代码体会一下多线程通过继承Thread类实现多线程package yzy.cn;public class inheritThread extends Thread{ private int nums; //重载run方法 @Override public void run() { this.nums = nums; super.run(); for(int i=0; i<nums; ++i) System.out.println("singin.

2020-09-21 10:47:41 342

原创 Python3.8.5保姆级安装教程

python官网下载传送门python官网下载地址(手动输入):https://www.python.org/downloads/release/python-385/网站尾部如图(下载适合windows的压缩包解压后就会得到.exe的安装程序):注意x86-64的支持64位系统,只有x86的是32位的1.下载成功后右键以管理员身份运行.exe安装程序作者下载的是3.8.5,据官方说是stable12.进入以下界面,按如图步骤执行3.来到这个界面后,选择自己的安装路径4..

2020-09-20 22:21:46 3009

原创 127.RandomAccessFile随机流、SequenceInputStream合并流(序列流)

RandomAccessFile随机流随机访问,可以读和写,由构造器的第二个String类型的参数mode决定,通过seek文件指针偏移函数就可完成文件随机读写继承关系Constructor SummaryConstructorDescriptionMethod SummaryMethod Modifier and TypeDescriptionpackage cn.yzy.io;import java.io.File;import java.io..

2020-09-20 17:41:16 409

原创 126.打印流PrintStream、PrintWriter

打印流PrintStream、PrintWriter都方便与输入输出,PrintWriter在javaEE1中比较实用A PrintStream adds functionality to another output stream, namely the ability to print representations of various data values conveniently. Two other features are provided as well. Unlike other o.

2020-09-20 10:53:58 313

原创 Eclipse2020最新高级教程(常用)

调试方式添加警告忽略器 public E get(int index) { return (E)elementData[index]; }E是泛型类型,以上代码会警告warnings: unchecked cast from Object to E方法:添加警告忽略语句(因为代码并没有逻辑错误而且是编译器太严格的原因)添加如下语句:@SuppressWarnings("unchecked")在警告位置前面 @SuppressWarnings("unchecked").

2020-09-17 21:22:14 1521

原创 125.对象流(ObjectInputStream、ObjectOutputStream)

ObjectOutputStream输出流将对象序列化为字节流进行存储1,ObjectInputStream输入流将读取到的字节流反序列化为对象ObjectInputStreamAn ObjectInputStream deserializes primitive data and objects previously written using an ObjectOutputStream.Only objects that support the java.io.Serializable or j.

2020-09-17 18:45:00 303

原创 124.数据流(DataOutputStream、DataInputStream)

DataOutputStreamThis class is the superclass of all classes that filter output streams. These streams sit on top of an already existing output stream (the underlying output stream) which it uses as its basic sink of data, but possibly transforming the da.

2020-09-17 14:19:59 473

原创 123.转换流(InputStreamReader、OutputStreamWriter)

InputStreamReader(解码 1)/OutputStreamWriter(编码 2):是字节流和字符流相互转换的桥梁,以字符的形式操作字节流。InputStreamReader继承关系An InputStreamReader is a bridge from byte streams to character streams: It reads bytes and decodes them into characters using a specified charset. The c.

2020-09-16 13:40:23 252 1

原创 122.字符缓冲流(BufferedReader&BufferedWriter)

字符缓冲流用于提升字符流操作的速度和效率,BufferedReader的效率通过readLine方法[readLine属于新增方法,因此不能使用多态]体现,BufferedWriter新增的方法[相较于他的基类]是newLine函数,省去了手动加换行的麻烦1BufferedReader和BufferedWriter最底层是节点流类FileReader和FileWriterBufferedReader构造方法ConstructorDescriptionBufferedReader.

2020-09-09 21:04:41 726

原创 ASCII

直接上表格ASCII字符集是采用8位有符号整数的正数部分表示,取值范围是[0, 127]1Bin(二进制)Oct(八进制)Dec(十进制)Hex(十六进制)缩写/字符 |解释|0000 00000000x00NUL(null)0000 00010110x01SOH(start of headline)0000 00100220x02STX (start of text)0000 00110330x03ETX (end of te.

2020-09-09 20:34:21 436

原创 换行符CR,LF和CRLF

废话少说直接上表格换行符英文全称ASCII编码符号ASCII编码值用途CRCarriage Return\r 表示回车13MacIntosh操作系统(即早期的Mac操作系统)采用单个字符CR来进行换行LFLinefeed\n 转义字符表示换行10Unix/Linux/Mac OS X操作系统采用单个字符LF来进行换行CRLFCarriage Return & Linefeed\r\n 表示回车并换行NULLWindows操作系统采用两.

2020-09-09 19:55:33 2166

原创 121.借助文件拷贝设置对照组测试字节缓冲的效率提升

借助 "118.IO工具类"中的copy设立对照组,测试字节缓冲对性能的提升package cn.yzy.io;import java.io.BufferedInputStream;import java.io.BufferedOutputStream;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;.

2020-09-09 11:03:17 184

原创 120.字节缓冲流(BufferedInputStream&BufferedOutputStream)

字节缓冲流默认缓冲空间是8k,提升了性能最底层是节点流了类,释放的过程是由内向外释放的,因此直接释放字节流就行如果要手动全部释放的话,就需要从里到外依次释放节点流类:用于直接操作目标设备所对应的流类。节点流类所对应的IO源或目标称为流节点。比如我们用一个类和一个文件或网络相关联,那么这个类就叫做节点流类,这个文件或网络就叫做流的节点。测试BufferedInputStreampackage cn.yzy.io;import java.io.BufferedInputStream;imp.

2020-09-09 10:59:38 333

原创 119.IO原理剖析_装饰器设计模式

装饰器模式是GOF23种设计模式中较为常用的一种模式。它可以实现对原有类的包装和装饰,使新的类具有更强的功能。我这里有智能手机爱疯, 我们可以通过加装投影组件,实现原有手机功能的扩展。这就是一种“装饰器模式”。 我们在未来给普通人加装“外骨骼”装饰,让普通人具有力扛千斤的能力,也是一种“装饰器模式”。示例如下:package cn.yzy.io;public class testDecoration { public static void main(String[] args) { Ip.

2020-09-09 10:58:53 278

原创 118.IO工具类(Closeable、try-with-resources)

首先模拟实现一个fileUtils工具类。里面的copy方法用于拷贝文件数据,参数是两个文件流对象分别为输入和输出流,即拷贝的源和目的。对于以下实现的copy, copy2, copy3三个copy方法中第一个copy只需要传要拷贝的文件的源和目的文件的字符串调用copy函数就能完成拷贝public static void copy(String srcPath, String destPath) { //创建源 File srcFile = new File(srcPath); Fil.

2020-09-08 23:43:35 476

原创 117.对接流:图片文件和字节流之间转换

废话少说,直接上测试代码package cn.yzy.io;import java.io.ByteArrayInputStream;import java.io.ByteArrayOutputStream;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOExcept.

2020-09-08 23:42:21 594

原创 116.ByteArrayOutputStream

这个类实现了一个输出流,其中的数据被写入一个字节数组。当数据被写入时,缓冲区会自动生长。数据可以用toByteArray()和toString()检索This class implements an output stream in which the data is written into a byte array. The buffer automatically grows as data is written to it. The data can be retrieved using toB.

2020-09-07 23:26:19 444

原创 115.ByteArrayInputStream

一个ByteArrayInputStream包含一个内部缓冲区包含的字节,可以从流中读取。一个内部计数器跟踪下一个字节是由 read提供的方法。关闭ByteArrayInputStream没有影响。构造方法ConstructorDescriptionByteArrayInputStream(byte[] buf)创建一个 ByteArrayInputStream以便它使用buf作为缓冲数组。ByteArrayInputStream(byte[] buf, int off.

2020-09-07 23:25:44 385

原创 114.字节数组流(ByteArrayInputStream、ByteArrayOutputStream)

字符数组流包括ByteArrayInputStream和ByteArrayOutputStream类,用于处理字节流。并且这些处理流可以不用关闭,是由垃圾回收机制(GC:Garbage Collection)回收的任何格式任何形式的数据都可以转换为字节数组,简单说最重要的地方是方便网络传输...

2020-09-07 23:25:24 227

Intel部分芯片规格代码

Intel部分芯片规格代码,包含:规格参数、详细网址链接、核心数线程数、焊盘类型、基频睿频、TDP

2022-12-06

KaTeX教程KaTeX教程KaTeX

KaTeX教程KaTeX教程KaTeX教程KaTeX教程KaTKaTeX教程KaTeX教程KaTeX教程KaTeX教程KaTeX教程KaTeX教程KaTeX教程KaTeX教程KaTeX教程KaTeX教程KaTeX教程KaTeX教程KaTeX教程KaTeX教程KaTeX教程KaTeX教程KaTeX教程KaTeX教程KaTeX教程KaTeX教程KaTeX教程KaTeX教程KaTeX教程KaTeX教程KaTeX教程KaTeX教程eX教程KaTeX教程KaTeX教程KaTeX教程KaTeX教程KaTeX教程KaTeX教程KaTeX教程KaTeX教程KaTeX教程KaTeX教程KaTeX教程KaTeX教程KaTeX教程KaTeX教程KaTeX教程KaTeX教程KaTeX教程KaTeX教程KaTeX教程KaTeX教程KaTeX教程KaTeX教程KaTeX教程KaTeX教程KaTeX教程KaTeX教程KaTeX教程KaTeX教程KaTeX教程KaTeX教程KaTeX教程KaTeX教程KaTeX教程KaTeX教程KaTeX教程KaTeX教程KaTeX教程KaTeX教程KaTeX教程

2022-06-06

MySQL所有数据类型.pdf

MySQL所有数据类型.pdf

2022-01-17

MySQL 日期和时间类型.pdf

MySQL 日期和时间类型.pdf

2022-01-17

MySQL 字符串类型.pdf

MySQL 字符串类型.pdf

2022-01-17

MySQL 数值类型.pdf

MySQL 数值类型.pdf

2022-01-17

软件工程课件(详情:包含第四章——软件工程经济学).zip

软件工程课件(详情:包含第四章——软件工程经济学).zip

2021-12-25

软件工程经济学-课后习题及答案.zip

软件工程经济学-课后习题及答案.zip

2021-12-25

软件项目管理案例教程课后答案(第四版).docx

软件项目管理案例教程课后答案(第四版)

2021-06-17

软件项目管理案例教程课后答案.pdf

软件项目管理案例教程答案

2021-06-16

软件测试方法和技术老师划重点思维导图

软件测试方法和技术老师划重点思维导图

2021-01-10

操作系统课件习题整合 老师带领复习最终删减版.pptx

操作系统课件习题整合 老师带领复习最终删减版

2021-01-09

操作系统课件习题整合 老师带领复习第一遍删减版

操作系统课件习题整合 老师带领复习第一遍删减版操作系统课件习题整合 老师带领复习第一遍删减版操作系统课件习题整合 老师带领复习第一遍删减版操作系统课件习题整合 老师带领复习第一遍删减版

2021-01-09

操作系统课件习题整合

操作系统课件习题整合

2021-01-09

计算机操作系统(第四版)汤小丹课后答案完整版

计算机操作系统(第四版)汤小丹课后答案完整版

2021-01-09

操作系统之信号量练习题

信号量练习题信号量练习题信号量练习题信号量练习题信号量练习题

2021-01-09

西安财经学院试题11级操作系统(计本网络)

西安财经学院试题11级操作系统(计本网络)西安财经学院试题11级操作系统(计本网络)西安财经学院试题11级操作系统(计本网络)西安财经学院试题11级操作系统(计本网络)西安财经学院试题11级操作系统(计本网络)

2021-01-09

C++ Test实验(静态测试).pdf

C++ Test实验(静态测试).pdf

2020-12-17

C++ Test实验(动态测试).pdf

C++ Test实验(动态测试).pdf

2020-12-17

西安财经大学无纸化评测系统Java30套参考答案pdf

西安财经大学无纸化评测系统Java30套参考答案pdf

2020-12-06

ReferenceCard

pycharm快捷键

2020-11-22

字符编码的发展历程xmind

字符编码的发展历程xmind

2020-11-21

C 编译过程xmind

C 编译过程C

2020-11-21

博客园stdc++.h头文件源码

兼容性问题: 注意,目前POJ还不支持(G++、C++都不支持)。HDU部分支持(G++支持,C++不支持)。 其他国外的oj,还有台湾的oj都支持,CF,Topcoder也都支持。 当然,其实这是一个偷懒的写法,但是会降低编译速度(为何会降低编译速度,我还不能知道,等到之后学编译原理再来填坑吧)。 笔试平台可以使用,方便,VS中并不支持,一般G++ 4.4以上就支持这个头文件了。当然,私下自己学习就不要去使用了,对你的自主学习一点都没有好处。 不过是可以手动添加的

2020-04-26

万能头文件stdc++.h

兼容性问题: 注意,目前POJ还不支持(G++、C++都不支持)。HDU部分支持(G++支持,C++不支持)。 其他国外的oj,还有台湾的oj都支持,CF,Topcoder也都支持。 当然,其实这是一个偷懒的写法,但是会降低编译速度(为何会降低编译速度,我还不能知道,等到之后学编译原理再来填坑吧)。 笔试平台可以使用,方便,VS中并不支持,一般G++ 4.4以上就支持这个头文件了。当然,私下自己学习就不要去使用了,对你的自主学习一点都没有好处。 不过是可以手动添加的

2020-04-26

2017美赛优秀论文.zip

A Zambezi River Authority conference was held in March 2014, engineers warned that the foundations of the dam had weakened and there was a possibility of dam failure unless repairs were made. On 3 October 2014 the BBC reported that “The Kariba Dam is in a dangerous state. Opened in 1959, it was buil

2019-11-08

空空如也

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

TA关注的人

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