自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 TCP通信

tcp通信面向连接,在客户端与服务端之间创建socket管道,可大量传输。1;创建客户端的Socket对象:与服务端连接;public Socket (服务端的IP,对应的端口号).2:使用Socket对象,调用getOutputStream()方法得到字节输出流,可以将其包装为PrintStream()打印流,以便于数据的录入。3.使用流的相关方法完成数据的发送。4.释放资源,关闭管道TCP服务端接收数据1:使用构造器 public ServerSocket(端口号) 注册服务端的端口2:使用

2022-07-10 15:00:24 581

原创 UDP通信

这是发送端代码:这是接收端代码;

2022-07-10 11:38:15 635

原创 网络三要素

IP地址一般分为 公网地址与私有地址(局域网地址)。192.168.开头的是常见的局域网地址。192.168.0.0~192.168.255.255专门为机构内部使.主机的IP:127.0.0.1 或 localhost端口类型: 公认端口: 注册端口: 动态端口:tcp协议:线连接,在传输,要确认.udp协议:无连接,不可靠的传输.......

2022-07-10 11:17:20 765

原创 InetAddress类的基本使用

InetAddress表示IP地址 其常见的API如下

2022-07-09 20:59:19 376

原创 关于网络编程

网络编程 指的是让程序与网络上的其他设备的程序进行数据交互。网络之间常见的基本通信模式有:CS与BSCS:Client-Server 指代的是客户端与服务端BS: Browser-Server 指代的是浏览器与服务端网络编程的三要素:IP地址 端口 协议常见的IP地址有 ipv4 32bit 4字节 ipv6 1128bit 16字节IP地址的基本寻路:...

2022-07-09 13:48:39 92

原创 ScheduledExecutorService定时器

ScheduledExecutorService 内部为线程池 弥补了Timer的缺陷

2022-07-06 08:52:39 218

原创 Timer创建定时器

Timer是单线程,处理多个任务按照顺序执行,存在延时与设置定时器的时间有出入 * 可能会因为其中的某个异常使Timer线程死亡,从而影响后续任务,

2022-07-06 08:40:31 310

原创 线程池的创建与使用

public ThreadPoolExecutor(int corePoolSize,核心线程的数量 int maximumPoolSize, 该线程池支持的最大线程数量 long keepAliveTime, 指定零时线程存活的时间 TimeUnit unit, 指定存活时间的单位 秒 分 时 天 BlockingQueue<

2022-07-04 16:14:12 150

原创 模拟线程通信

1:多个线程共同操作的共享资源:User类 含有money存款,以及存钱与取钱的方法创建两个线程:存款线程与取款线程主方法:

2022-07-04 15:54:01 86

原创 线程同步的两个方法

1:同步代码块 synchronized (同步锁对象){ 操作共享资源的代码 } 注意一点:同步锁对象要保持唯一性,在对实例方法使用时,建议使用共享的资源,比如this,在对静态方法使用时,建议使用字节码,比如:类名.class方法2:同步方法修饰符 后面 加上synchronized,然后调用Lock接口的ReentrantLock实现类,使用 lock()方法上锁,unlock()方法释放锁,...

2022-07-03 16:13:47 149

原创 线程安全问题

线程安全问题指的是:多个线程同时操作一个共享资源的时候,可能会出现业务安全问题,一般发生与同事修改同一个共享资源时。

2022-06-25 16:12:25 212

原创 线程类的几大创建方法

线程的创建方法

2022-06-24 10:48:25 207

原创 打印流与System.setout();

打印流

2022-06-22 10:55:11 200

原创 对象的序列化与反序列化

对象的序列化与反序列化

2022-06-22 10:38:47 65

原创 缓冲流与转换流

2022-06-22 10:08:08 463

原创 字符输入流与字符输出流

与字节流大同小异。

2022-06-21 09:49:26 87

原创 FileOutPutStream

2022-06-21 09:39:28 73

原创 FileInputStream

2022-06-21 09:31:43 80

原创 方法递归求阶乘

调用自己的方法,又返回自己的值给自己的方法。

2022-06-19 13:18:05 89

原创 基于mysql-connector-java-8.0.29.jar的JDBC技术。

基于mysql-connector-java-8.0.29.jar的JDBC技术。

2022-06-18 16:40:17 1740 2

原创 File类文件搜索技术

File类文件搜索技术

2022-06-18 10:28:51 211

原创 File类的API

File类的API

2022-06-18 10:13:27 54

原创 自定义异常

自定义异常分为两种异常:编译时异常 以及 运行时异常关于下定义异常:分为以下几个步骤:1:定义一个异常类 extends Exception 或 RunTimeException2:重写构造器3:再出现异常的地方使用throws new 自定义异常4:抛出异常...

2022-06-18 09:52:08 49

原创 收集Stream流

收集Stream流

2022-06-17 09:38:33 55

原创 Stream流的常用API

Stream流的常用API

2022-06-16 11:29:20 517

原创 Stream流对象的获取

获取Stream流的对象

2022-06-16 10:20:33 1838

原创 创建不可变集合

不可变集合就是集合的数据一旦确定就不会改变,与普通集合的创建不一样的是,改变数据的赋值方式,

2022-06-16 10:08:48 313

原创 Map集合的遍历方式

第一种方式:通过键找值第二种方法:转换为键值对进行遍历第三种方法:使用Lambda表达式遍历

2022-06-15 15:48:05 82

原创 Map集合的常用API

内容我都写在代码的注释里面了

2022-06-15 08:59:59 243

原创 Collections集合操作类

常见的三种方法: 批量添加,打乱元素,对元素排序

2022-06-14 14:33:18 60

原创 方法中的可变参数

方法中的可变参数的特点:一:可变参数唯一,二:可变参数必须放在末尾,三:可变参数可以接受任意数量的元素,包括数组。四:方法内地可变参数相当与一个数组,可以通过数组的方式遍历每一个元素,或者得到其长度...

2022-06-14 14:24:13 201

原创 TreeSet集合自定义对象的比较规则

TreeSet集合自定义对象的比较规则

2022-06-14 10:48:32 150

原创 重写equals与hashCode方法比较Set集合的对象

通过重写equals与hashCode方法判断Set集合的对象相等。

2022-06-14 10:29:51 98

原创 List集合的并发修改异常问题:删除举例

问题来源:这个问题主要是来自与集合的特性,集合没有长度限制,所以当删除一个元素时,当前元素后面的元素都会往前移动,荣国这个时候是通过循环遍历删除的话,那循环的索引又会往后走一位,总的来看;相当于索引往后走了两位,那就会跳过一个元素,出现Bug。解决方法一:使用迭代器遍历删除方法二:从后往前删除这是往前面找到,即使后面的元素上来了也不会有影想。...

2022-06-14 10:22:22 395

原创 List集合的四大遍历方式

package com.yangyang.d3_Collection_List;import java.util.ArrayList;import java.util.Iterator;import java.util.List;import java.util.function.Consumer;public class Test { public static void main(String[] args) { //List集合的遍历 //相较于C.

2022-05-01 21:12:02 276

原创 List集合的创建以及常用API的使用

package com.yangyang.d3_Collection_List;import java.util.ArrayList;import java.util.List;public class Test { public static void main(String[] args) { //创建ArrayList集合 List<String> list=new ArrayList<>();//经典代码 l.

2022-05-01 19:20:37 443

原创 集合的遍历

import java.util.ArrayList;import java.util.Collection;import java.util.Iterator;import java.util.function.Consumer;public class Test { public static void main(String[] args) { //几大遍历方式 //迭代器 Collection<Integer> c=.

2022-05-01 15:37:52 46

原创 Collection的几大常用API

import java.util.ArrayList;import java.util.Collection;public class Test { public static void main(String[] args) { /* * Collection集合的常用API * */ Collection<Integer> c=new ArrayList<>(); //注意<&.

2022-05-01 15:21:57 327

原创 Lambda表达式

import java.util.Arrays;public class Test { public static void main(String[] args) { /* * Lambda表达式 *格式: (匿名内部类的重写方法的形参列表)->{重写的方法体} * 注意:只能是一个抽象方法的接口 * 必须是抽象的 只能有一个方法 * */ Animal animal=(..

2022-05-01 15:00:03 45

原创 二分查找法

import java.util.Arrays;public class Test { public static void main(String[] args) { //二分查找法,适用于大量数据的查找 注意一定要先排序 int []arr=new int[]{1,2,34,4,5,6,7,8,98,9,687,34,32,3,13}; System.out.println(FindNumber(arr, 2)); } /.

2022-05-01 14:35:12 155

空空如也

空空如也

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

TA关注的人

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