Java
文章平均质量分 82
Java基本语法及进阶知识
一叶祇秋
这个作者很懒,什么都没留下…
展开
-
Cookie 和 Session
Cookie 和 Session 的定义,工作流程,使用方法原创 2024-04-27 22:20:23 · 738 阅读 · 0 评论 -
HTTPS协议的加密流程
会发生上述 "中间人" 问题的原因是客户端无法区分这个公钥究竟是不是黑客伪造的,因此在这里就要引入第三方,即一个被大家信任的"公正机构",如果公正机构说这个公钥是正确的,不是被伪造的,我们就可以使用这个公钥进行加密。原创 2023-11-22 20:40:20 · 137 阅读 · 0 评论 -
JVM虚拟机
JVM内存区域划分,类加载过程及垃圾回收机制原创 2023-12-09 22:21:42 · 912 阅读 · 0 评论 -
网络编程——以太网协议
mac地址的大小是6个字节,它能表示的范围比IP地址大很多,所以至今mac地址还是够用的,也就是说每一台设备都有唯一的mac地址(每个网卡一出厂就写死了),所以mac地址可以当作一台网络设备的身份标识。这个地址不是IP地址,而是网络中的另一套地址体系,mac 地址(物理地址),这个地址的作用与IP地址有一定的重合。原创 2023-11-03 21:14:48 · 150 阅读 · 0 评论 -
网络编程 - IP协议
IP协议格式,地址管理和路由选择原创 2023-10-28 17:37:59 · 166 阅读 · 0 评论 -
网络编程 - TCP协议
TIME_WAIT 的等待时间是多长:假设网络上两个节点的通信消耗的最大时间是 MSL,那么此时的TIME_WAIT就是 2 MSL.3.4 滑动窗口前面的三个机制,都是在保证TCP协议的可靠传输,而TCP协议的可靠传输是会影响传输效率的,滑动窗口就是在保证可靠传输的前提下,提高传输效率的一个机制。滑动窗口是通过缩短确认应答的等待时间来提高效率的,我们知道正常传输数据是:每收到一个应答报文,再发送下一个数据,在这个过程中,等待的时间比较长。原创 2023-10-18 21:26:43 · 245 阅读 · 0 评论 -
网络编程 - HTTP协议
HTTP协议与之前讲的TCP/IP协议不同,HTTP协议要分为两个部分——请求和响应,也就是一种"一问一答" 结构模型的协议。原创 2023-11-05 20:58:09 · 188 阅读 · 0 评论 -
网络原理 - 详解
端口号是一个2个字节的整数,用来区分一个主机上的不同应用程序,不同的程序可以绑定不同的端口号,在同一个主机上,一个端口号只能绑定一个应用程序,但一个应用程序可以绑定多个端口号。网络通信也是一样,当遇到复杂的场景时,往往需要大量的协议,如果使用一个协议来解决所有问题,那么协议就会非常庞大,不利于我们去理解和学习。计算机的传递形式是光信号和电信号,通过频率和强弱来表示0和1这样的信息,要想传递不同的数据类型,就要约定双方的数据格式原创 2023-10-07 19:42:19 · 145 阅读 · 0 评论 -
网络编程 - UDP协议
Socket API 是系统提供的一组用于网络编程的应用程序接口,socket 本质上是一种特殊的文件,它是把网卡这个设备,给抽象成了文件,往socket文件中写数据,就相当于是通过网卡发送数据,从socket文件中读数据,就相当于通过网卡接收数据。原创 2023-10-11 16:57:00 · 528 阅读 · 0 评论 -
多线程进阶2 - 哈希表
Hashtable, HashMap, ConcurrentHashMap 之间的区别原创 2023-10-03 19:24:11 · 140 阅读 · 0 评论 -
进程与线程
进程是指正在运行的计算机程序。每个进程都有自己的内存空间和系统资源,它与其他进程相互隔离,彼此独立运行。进程可以包含一系列指令和数据,它们被操作系统分配给处理器进行执行。进程可以是操作系统自身的一部分,也可以是由用户创建的应用程序。一个计算机系统可以同时运行多个进程。原创 2023-08-23 23:51:03 · 119 阅读 · 0 评论 -
多线程案例(1) - 单例模式
单例模式详解 - 饿汉模式,懒汉模式原创 2023-09-13 22:23:30 · 414 阅读 · 0 评论 -
lambda表达式
lambda表达式是匿名内部类的一种简写形式,但是还是有一定的区别,lambda表达式所需要的函数式接口只能有一个抽象方法,匿名内部类所需要的接口可以有多个抽象方法。原创 2023-08-18 17:34:08 · 227 阅读 · 0 评论 -
多线程案例(3) - 定时器,线程池
定时器,线程池详解原创 2023-09-16 19:01:59 · 95 阅读 · 0 评论 -
多线程案例(2) - 阻塞队列
阻塞队列详解原创 2023-09-15 17:56:24 · 69 阅读 · 0 评论 -
文件操作 和 IO - 详解
文件操作,字节流,字符流 详解原创 2023-10-05 20:28:22 · 182 阅读 · 0 评论 -
线程安全问题(3)--- wait(),notify()
wait(),notify() 及 wait 和 sleep 之间的区别原创 2023-09-13 19:33:02 · 151 阅读 · 0 评论 -
多线程进阶1 --- 锁策略+CAS+synchronized原理
锁策略,CAS 和 synchronizied 原理详解原创 2023-10-02 20:38:48 · 155 阅读 · 0 评论 -
线程安全问题(2) --- synchronized,volatile关键字
synchronized,volatile关键字的特性和使用,死锁的原因及解决方法原创 2023-09-09 19:14:21 · 145 阅读 · 0 评论 -
线程安全问题(1)
线程安全问题及其解决方法原创 2023-08-30 22:47:33 · 156 阅读 · 0 评论 -
Java线程 - 详解(1)
线程的创建,常见方法及状态原创 2023-08-25 22:50:00 · 544 阅读 · 0 评论 -
Java中的枚举类型
在Java中,枚举(Enumeration)是一种特殊的数据类型,它允许我们定义一个固定数量的常量集合。枚举类型在Java中是通过关键字enum来定义的。每个枚举常量都是枚举类型的实例,它们在枚举类型中以逗号分隔。原创 2023-08-16 19:32:58 · 663 阅读 · 0 评论 -
JAVA-SE-String类
String类中的部分方法原创 2023-05-14 16:00:06 · 58 阅读 · 0 评论 -
图书管理系统
【代码】图书管理系统。原创 2023-05-12 20:25:01 · 398 阅读 · 0 评论 -
JAVA-SE-内部类
内部类就是定义在类里面的类,它又分为:实例内部类,静态内部类,局部内部类和匿名内部类,下面我们来逐个介绍。原创 2023-05-10 22:43:21 · 89 阅读 · 3 评论 -
JAVA-SE-浅拷贝与深拷贝
那么怎样实现浅拷贝呢?在Java 中有一个内置的 Clonable 接口,在Object 类中也存在一个 clone 方法,调用这个方法可以创建一个对象的 "拷贝"。就是复制粘贴,简单来说就是将对象中的内容"复制粘贴"到另一个对象中,使其中的成员内容相同,而。与浅拷贝的实现大同小异,多了一步Money类的拷贝 - 实际上就是实现了两次浅拷贝!2. 按 Alt + Enter 键,点击用红框框出来的。就是只拷贝一层(现在可能看不懂,等看完深拷贝就懂了)3. 它会自动补上以下内容。修饰的,所有它只能在。原创 2023-05-10 14:56:20 · 113 阅读 · 2 评论 -
Java中的反射
在Java中,反射是指在运行时动态地获取和使用类的信息的能力。反射允许程序在运行时检查类、接口、字段和方法,以及动态实例化对象、调用方法和访问或修改字段的属性。简单来说,对于任意一个类,通过反射就可以知道这个类的所有属性和方法,并且可以通过反射进行调用。原创 2023-08-15 23:40:53 · 123 阅读 · 0 评论 -
JAVA-SE-异常
异常的分类,异常的五个关键字 throw, throws, try, catch, finally。及怎样自定义一个异常类原创 2023-05-16 15:37:18 · 362 阅读 · 0 评论 -
JAVA-SE-Object类
Object类是JAVA默认提供的一个类,Object类是所有子类的父类所有类都可以向上转型为Object类,这时候,有人会问一个子类不是只能继承一个父类吗,如果一个子类A已经继承了一个父类B,那么Object类怎么能成为子类A的父类呢?那是因为父类B默认继承了Object类,所以子类A继承父类B的同时也继承了Object类。(当发生多层继承的时候,就是一层一层往上叠,总用一个类没有继承任何类,那么它就会默认继承Object类)。原创 2023-05-08 18:04:04 · 60 阅读 · 1 评论 -
JAVA-SE-接口2
总结:在比较一个复杂对象时,需要一个标准(按照什么比较),因此在JAVA中我们需要实现Comparable接口并且重写compareTo方法,因为Arrays.sort()方法会调用comparaTo方法,并以此来排序,在C语言中也有类似的函数,例如qsort函数,需要我们提供一个比较函数。1.抽象类中可以有普通方法也可以有抽象方法,而接口中方法默认是由public abstract修饰的。2.抽象类中可以有普通类成员,而接口中的成员变量默认是public static final修饰的。原创 2023-05-07 15:28:52 · 82 阅读 · 0 评论 -
JAVA-SE-类的补充
1.1 static修饰成员变量 ---- 静态成员变量与其他成员变量不同:1. 静态成员变量属于类本身,也就是说,该变量是所有该类的对象共享的2. 静态成员变量被单独存储在方法区中3. 静态成员变量可以通过类名访问,也可以通过对象访问(最好用类名访问)4. 静态成员变量的生命周期伴随类的一生原创 2023-04-30 23:42:27 · 55 阅读 · 0 评论 -
JAVA-SE语法篇 - 1
java中的数据类型分为两类:基本数据类型和引用数据类型,运算符与C语言的区别原创 2023-04-14 18:43:58 · 65 阅读 · 0 评论 -
JAVA-SE-类和对象
从所周知,JAVA是一门面向对象的编程语言,那么什么是所谓的面向对象呢?打个比方,现在人们洗衣服,我们只需要将衣服和洗衣粉倒入洗衣机里,定个时就可以了,从面向对象的角度说,我们只关注人,衣服,洗衣粉,洗衣机这几个对象就可以了,不需要去探究这些对象是如何协作来完成洗衣服这件事情。这就是所谓的面向对象。(现在可能还是有点抽象,接着往下看!类就是用来对一个实体(对象)来进行描述的,主要描述该实体(对象)具有哪些属性(外观尺寸等),哪些功能(用来干啥),描述完成后计算机就可以识别了。原创 2023-04-29 18:28:36 · 52 阅读 · 0 评论 -
JAVA-SE-抽象类和接口
1. 抽象类也是一种类,在普通类中定义的成员变量和成员方法都可以在抽象类中实现2. 抽象方法只能在抽象类中定义,否则就会报错3. 抽象类和抽象方法都由abstract关键字修饰//接口。原创 2023-05-02 20:45:23 · 57 阅读 · 0 评论 -
JAVA-SE-封装,继承和多态
封装:将数据和操作数据的方法进行有机结合,隐藏对象的属性和实现细节,仅对外公开接口来和对象进行交互。简单来说,封装就是为了隐藏实现的过程,类似于方法,你可以通过已有的方法来得到你想要的值,但是你不知道它是如何实现的,再具体一点就是,比如一个电脑,你可以通过键盘,鼠标等对象来使用电脑,但是你不知道电脑的内部是如何运行的。继承类似于我们常说的遗传,就是将多个对象共有的属性提取出来,写到一个类当中,那么我们就将这个类称为父类,而将用 extends 关键字来继承父类的类称为子类。//父类//子类。原创 2023-05-01 21:31:14 · 76 阅读 · 0 评论 -
Java-SE-语法篇-2
JAVA的方法与数组原创 2023-04-22 23:01:58 · 78 阅读 · 0 评论 -
JAVA-SE-语法篇-二维数组
在JAVA中,二维数组不能像C语言一样创建,int[ ][ ]中不能有数字,因为JAVA把int[ ][ ]当作一种类型,且如果在创建时没有赋值,只能一个一个赋值。array数组名指向的是array[0]的空间,所以我们可以用array.length来获得行数,又因为array[0]所。在C语言中,我们创建二维数组时必须要确定二维数组的列数,比如 int a[ ][2] = {1,2,3,4};指向的是第一行的数据,因此我们可以用array[0].length来获得第一行的列数。原创 2023-04-23 22:03:32 · 62 阅读 · 0 评论