自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 网络编程(TCP UDP)

网络编程计算机网络:是指将地理位置不同的具有独立功能的多台计算机及其外部设备,通过通信线路连接起来,在网络操作系统,网络管理软件及网络通信协议的管理和协调下,实现资源共享和信息传递的计算机系统。网络编程就是用来实现网络互连的不同计算机上运行的程序间可以进行数据交换网络模型概述计算机网络之间以何种规则进行通信,就是网络模型研究问题。网络模型一般是指:OSI(Open System Interconnection开放系统互连)七层参考模型TCP/IP四层参考模型:主机至网络层(物理层 , 数据链路

2020-08-28 12:09:11 216

原创 死锁,java模型,等待机制,CAS算法,定时器,单例模型

Lock锁的概述和使用Lock和ReentrantLock void lock() 加锁 void unlock() 释放锁 死锁:如果出现了同步嵌套,就容易产生死锁问题,是指两个或者两个以上的线程在执行的过程中,因争夺资源产生的一种互相等待现象。两个或者两个以上的线程,在抢占CPU的执行权的时候,都处于等待状态死锁演示package com.itheima.demo.demo6;public interface ObjectUtils { //创建 两把锁对象 Ob

2020-08-25 20:25:59 139

原创 快速排序md

快速排序算法思想:比大小,再区分也就是从数组中抽取出一个基准,将比基准大的放右边,小的放左边,再对左右两区重复操作,最终得到有序数组具体也就是挖坑操作:将基准数挖出形成第一个坑,由后向前找比他小的数,找到后挖出此坑填到前一个坑中由前向后找比他大或等于他的数,找到后也挖出此坑填到前一个坑中,当从前从后两坑相遇,分出左右两个区开启新的一轮,再重复执行二三两步操作。package com.itheima.demo1;import java.util.Arrays;public clas

2020-08-25 20:25:27 211

原创 线程池

线程池线程池的优点:线程是稀缺资源,使用线程池可以减少创建和销毁线程的次数,每个工作线程都可以重复使用。可以根据系统的承受能力,调整线程池中工作线程的数量,防止因为消耗过多内存导致服务器崩溃概述:程序启动一个新线程成本是比较高的,因为它涉及到要与操作系统进行交互。 而使用线程池可以很好的提高性能,尤其是当程序中要创建大量生存期很短的线程时,更应该考虑使用线程池。 线程池里的每一个线程代码结束后,并不会死亡,而是再次回到线程池中成为空闲状态,等待下一个对象来使用。 在JDK5之前,我们必须

2020-08-22 17:23:22 119

原创 稀疏数组sparsearray

稀疏数组sparsearray当一个数组中大部分元素为0,或者为同一个值的数组时,可以使用稀疏数组来保存该数组。起到一个搜索数组的效果。稀疏数组的处理方法是:记录数组一共有几行几列,有多少个不同的值把具有不同值的元素的行列及值记录在一个小规模的数组中,从而缩小程序的规模二维数组转稀疏数组的思路遍历原始的二维数组,得到有效数据的个数sum根据sum就可以创建稀疏数组aparsearray int[sum+1][3];将二维数组的有效数据存入到系数数组。稀疏数组转换成二维数组的思路先

2020-08-21 21:56:21 147

原创 多线程

多线程线程是依赖于进程存在的,进程:进程就是正在运行的程序,是系统进行资源分配和调用的单位,每一个进程都有它自己的内存空间和系统资源。多线程单进程计算机只能做一件事,常见的操作系统都是多进程操作系统,对于单核计算机来讲,游戏进程和音乐进程不是同时运行的。因为CPU在某个时间点上只能做一件事,计算机是在游戏进程和音乐进程之间做着频繁的切换,且切换速度很快。对进程的作用不是提高执行速度而是提高CPU的使用率。概述:在一个进程内部又可以执行多个任务,而这每一个任务我们就可以看成是一个线程,是程序使用

2020-08-20 17:39:26 332

原创 接口,多态的综合案例

笔记本电脑通常具备使用usb设备的功能,在生产时,笔记本都预留了可以插入USB设备的USB接口,但是具体是什么设备,笔记本厂商并不关心,只要符合USB规格的设备就可以,定义usb接口,具备最基本的开启和关闭功能,鼠标和键盘要想能在电脑上使用,那么鼠标和键盘也必须遵守USB规范,实现USB接口,否则鼠标和键盘生产出来也无法使用。分析:USB接口:包含开启功能,关闭功能。笔记本类:包含运行功能,关机功能,使用USB设备的功能鼠标类:要实现USB接口,并具备点击的功能键盘类:要实现USB接口,具备敲击的

2020-08-20 17:38:51 161

原创 群主发红包(继承)

群主发普通红包。某群有多名成员,群主给成员发普通红包。普通红包的规则:群主的一笔金额,从群主余额中扣除,平均分成n等份,让成员领取。成员领取红包后,保存到成员余额中。请根据描述,完成案例中所有类的定义以及指定类之间的继承关系,并完成发红包的操作。User类package com.itheima.demo1;public class User { private String username; private double leftmoney; public Us

2020-08-18 23:03:23 9048

原创 实现用户登录注册

user实体类package org.westos.bean;public class User { public String username; private String password; public User() { } public User(String username, String password) { this.username = username; this.password = passwo

2020-08-17 15:21:25 963 3

原创 键盘录入学生信息

package com.itheima.demo18;import javax.swing.plaf.synth.SynthUI;import java.io.BufferedWriter;import java.io.FileWriter;import java.io.IOException;import java.text.SimpleDateFormat;import java.util.Comparator;import java.util.Date;import java.uti

2020-08-15 21:29:44 423

原创 Io流(补充)

数据输入流和数据输出流数据输入流: DataInputStream数据输出流: DataOutputStream可以写基本数据类型也可以读基本数据类型。怎么写的就怎么读,顺序不可以打乱。内存操作流此流不直接关联任何文件,只在内存中进行读写,操作字节数组ByteArrayOutputStream:在内存中维护了一个字节数组,作为缓冲区,随着数据的不断写入,缓冲区不断的扩充。可使用 toByteArray () 和 toString () 获取缓冲区中的数据。此类实现了一个输出流,其中的数据被写

2020-08-15 21:26:28 129

原创 io流(字节流,字符流)

IO流概述:IO流用来处理设备之间的数据传输,java中对数据的操作是通过流的方式,java用于操作流的对象都在io流包中,(java.io)分类按照数据流向,站在内存角度:输入流:从硬盘中读入数据。输出流:给硬盘中写入数据。按照数据类型:字节流:可以读写任何类型的文件,比如:音频,视频,文本文件。文件夹不行字节输入流 InputStream 读字节输出流 OutputStream 写字符流:只能读写文本文件。字符输入流 Reader 读字符输出流 Wri

2020-08-13 22:15:48 255

原创 异常处理和file类

IO流用来处理设备之间的数据传输,上传文件和下载文件输入输出流,用于设备之间的数据传输File表示的是IO流将来要操作的文件。异常异常就是java程序在运行过程中出现的错误。Throwable 问题Erro 错误,属于严重性问题Exception 异常,属于一般性问题 可分为运行期异常和编译期异常。运行期异常:RuntimeException及其子类 运行期异常我们自己可以解决,也可不不解决(ArithmeticException 除数为0的异常),对于运行期异常,我们自己没有

2020-08-11 16:20:28 309

原创 集合2(map)

map集合用来操作键值映射关系的数据。map接口map是双列集合,一个键只能映射一个值,键是唯一的,键相同值就会覆盖。map接口和collection接口的区别Map是双列的,Collection是单列的Map的键唯一,Collection的子体系Set是唯一的Map集合的数据结构针对键有效,跟值无关;Collection集合的数据结构是针对元素有效map集合的功能添加功能 V put(K key,V value):添加元素。这个其实还有另一个功能替换 如果键是第一次存储,

2020-08-08 15:51:31 253

原创 集合框架1

package com.itheima.demo10;import java.util.ArrayList;//删除集合中的重复元素,不创建新集合public class test { public static void main(String[] args) { ArrayList list = new ArrayList(); list.add("200"); list.add("300"); list.add("200"

2020-08-06 17:23:14 93

原创 BigDecimal类

BigDecimal类概述:float类型和double很容易丢失精度,为了能精确地表示计算浮点数,java提供了BigDecimal构造方法:public BigDecimal(String val)成员方法:public BigDecimal add(BigDecimal augend)//加public BigDecimal subtract(BigDecimal subtrahend)//减public BigDecimal multiply(BigDecimal multiplican

2020-08-04 17:33:19 494

原创 正则表达式

基本类型与包装类型byteByteshortShortintIntegerlongLongfloatFloatdoubleDoublecharCharacterbooleanBooleanInteger类integer类在对象中包装了一个基本类型int的值还提供了多个方法,能在int类型和string类型之间互相转换public Integer(int value)public Integer(String s)//要一个

2020-08-01 15:03:42 145

空空如也

空空如也

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

TA关注的人

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