java
文章平均质量分 93
7 9 9
等写好获奖感言,我就登上舞台。
展开
-
JAVASE常见面试题30道
一些面试题原创 2023-08-22 10:20:54 · 312 阅读 · 0 评论 -
JDK8新特性
1.Lambda 表达式:Lambda 表达式是函数式编程的重要组成部分。它们提供了一种简洁的方式来表示匿名函数,可以作为参数传递给方法或使用函数式接口进行操作。2.Stream API:Stream API 提供了一种流式处理集合数据的方式。它支持函数式编程风格的操作,可以进行过滤、映射、排序、归约等操作,简化了对集合数据的处理。3.方法引用:方法引用提供了一种更简洁的语法来调用已经存在的方法。它可以通过名称引用静态方法、实例方法或构造函数,并且可以与Lambda表达式配合使用。原创 2023-08-16 19:11:25 · 46 阅读 · 0 评论 -
反射的概述
反射是一种在运行时动态获取和操作类、对象、方法和属性的机制。通过使用反射,你可以在编译时不知道具体类的情况下,获取类的信息、调用方法和访问属性。使用反射时要注意安全性和性能。由于反射是一种动态操作,因此可能会带来一定的性能开销。另外,需要处理异常和访问权限等问题。在 Java 中,反射机制由 java.lang.reflect 包提供支持。为了使地址不改变,我们可以用反射来改变值。这样改变值,地址就改变了。原创 2023-08-16 18:59:09 · 34 阅读 · 0 评论 -
TCP的三次握手与四次挥手过程解析
关闭连接时,被动断开方在收到对方的FIN结束请求报文时,很可能业务数据没有发送完成,并不能直接立即关闭连接,被动方只能先回复一个ACK响应报文,告诉主动断开方:“你发的FIN报文我收到了,只有等我所有的业务报文都发送完了,我才能真正的结束,在结束之前,我会发你FIN+ACK报文的,你先等着”。⽐如,如果发送端发送的⼀个TCP帧的净荷为12byte,序号为5,则发送端接着发送的下⼀个数据包的时候,序号的值应该设置为5+12=17。TCP报⽂⾸部的后⾯,接着的是数据部分,不过数据部分是可选的。原创 2023-08-15 20:00:34 · 93 阅读 · 1 评论 -
网 络 编 程
但是这显然是有些复杂的,所以在TCP/IP协议中,七层被简化为了四个层次。TCP/IP模型中的各种协议,依其功能不同,被分别归属到这四层之中,常被视为是简化过后的七层OSI模型。总结起来,IP是互联网中用于标识和定位设备的协议,它使用IP地址来唯一标识设备,并通过数据包在网络中进行通信和路由。IP是Internet Protocol(互联网协议)的简称,它是一种网络通信协议,用于在网络中标识和定位设备。无连接性:IP协议是无连接的,每个数据包都独立发送,它们可以通过不同的路径到达目的地。原创 2023-08-14 18:59:04 · 58 阅读 · 0 评论 -
java之File类
AIO通过回调函数的方式来处理I/O操作完成的通知,从而实现异步非阻塞的I/O操作。BIO(Blocking I/O):BIO是最传统的I/O模型,它基于阻塞式I/O操作。在BIO中,每个I/O操作都会阻塞当前线程,直到该操作完成。缓冲流通过在内存中创建一个缓冲区(Buffer),将数据先存储在缓冲区中,然后批量地进行读取或写入操作,减少了频繁的磁盘或网络访问,从而提高了性能。3.使用流对象的相关方法进行读取或写入操作,例如使用 read() 方法读取字节数据,或使用 write() 方法写入字节数据。原创 2023-08-13 17:37:50 · 33 阅读 · 0 评论 -
Map接口详解
Map接口以及实现类的讲解和内外比较器的讲解原创 2023-08-09 19:00:52 · 606 阅读 · 0 评论 -
iterator迭代器应用场景分类
总结来说,只要实现了Iterable接口的集合,都可以通过迭代器进行遍历。迭代器提供了一种通用的遍历方式,适用于多种集合类型,并提供了方便的操作方法,如 next()、hasNext()、remove() 等。在使用自定义的迭代器之前,你需要实现迭代器中的hasNext() 和 next() 方法,并提供适当的逻辑来返回下一个元素。也就是:但是上面的迭代器功能并不完整 ,下面我们通过一个例子,来演示自定义迭代器} };// 处理元素的逻辑 }原创 2023-08-09 10:20:50 · 92 阅读 · 0 评论 -
Collection集合之子接口Set
元素的顺序:List 是有序集合,可以按照元素添加的顺序访问和获取元素。而 Set 是无序集合,不保证元素的顺序,不能通过索引访问元素。元素的唯一性:List 允许存储重复元素,可以通过索引访问和修改相同值的元素。而 Set不允许存储重复元素,每个元素在集合中只能出现一次。接口的实现类:Java 提供了多个 List 和 Set 的实现类。常见的 List 实现类有ArrayListLinkedList等;常见的 Set 实现类有HashSetTreeSet等。原创 2023-08-08 19:04:24 · 69 阅读 · 0 评论 -
枚举和注解
要获取方法的注解,您可以使用 Java 的反射机制。方法获取该方法上的所有注解。我们遍历这些注解,并筛选出我们感兴趣的。请注意,为了演示目的,我使用了一个自定义注解。您可以根据您自己的需要修改和使用相应的注解。在上面的例子中,我们定义了一个自定义注解。方法获取方法对象,然后使用。注解,然后访问注解的属性。方法中,我们首先使用。使用枚举表示线程状态。原创 2023-08-07 20:15:24 · 26 阅读 · 0 评论 -
集合Collection接口的子接口List
Collection 接口是 Java 集合框架中的根接口,它是所有集合类的父接口。它定义了一些通用的方法和行为,用于操作和管理集合中的元素。方法用于向集合中添加一个元素,方法用于从集合中删除指定元素,clear()方法用于清空集合中的所有元素。方法用于判断集合是否包含指定元素,isEmpty()方法用于判断集合是否为空。size()方法用于获取集合中元素的个数。iterator()方法返回一个用于遍历集合元素的迭代器。toArray()方法将集合转换为数组。原创 2023-08-07 20:03:45 · 170 阅读 · 0 评论 -
正则表达式
正则表达式概述原创 2023-08-03 18:41:31 · 56 阅读 · 0 评论 -
一些常用类
一些常用类的理解与分享原创 2023-08-02 19:54:05 · 52 阅读 · 0 评论 -
线程池简述
线程池是一种用于管理和复用线程的机制,它可以在需要执行多个任务时,通过维护一定数量的线程来提供并发执行的能力。线程池可以有效控制线程的创建、销毁和复用,从而减少线程创建与销毁的开销,并且能够更好地管理系统资源,提高应用程序的性能和效率。1.提高系统性能:通过复用线程,减少线程创建和销毁的开销,并且可以控制并发线程的数量,避免系统资源耗尽。2.提高响应速度:线程池可以快速地获取可用线程来执行任务,减少任务等待的时间,提高应用程序的响应速度。3.提供线程管理和监控:线程池提供了对线程的管理和监控功能,可以监原创 2023-08-01 19:19:34 · 147 阅读 · 1 评论 -
java多线程之锁简述
java多线程中锁的概述原创 2023-07-31 17:24:35 · 95 阅读 · 0 评论 -
java之多线程02
执行join方法后:在Java中,可以使用Thread类的join()方法来实现线程合并(也称为线程等待)。线程合并指的是某个线程执行完毕后再继续执行。join()方法用于等待调用它的线程执行完毕。具体地,当一个线程调用另一个线程的join()方法时,它将会等待被调用线程执行完毕后再继续执行。在上面的代码中,myThread1和myThread2是两个并行执行的线程。通过调用它们各自的join()方法,主线程会等待这两个线程执行完毕后再继续执行。原创 2023-07-27 17:15:35 · 59 阅读 · 1 评论 -
java之多线程
1.程序(Program):程序是一组指令的有序集合,用于实现特定任务或完成特定功能。它通常以文件的形式存储在硬盘上,并被操作系统加载到内存中执行。程序本身是静态的,只有在执行时才变为动态状态。2.进程(Process):进程是计算机中正在运行的程序的实例。它是操作系统进行资源分配和调度的基本单位。每个进程都有自己的地址空间、内存、文件句柄等资源。进程之间相互独立,彼此隔离,各自运行在自己的虚拟环境中。3.线程(Thread):线程是进程内的一个执行单元,负责执行程序中的代码。原创 2023-07-26 20:03:05 · 61 阅读 · 1 评论 -
Java基础之异常处理
异常:在java语言中,将程序执行中发生的不正常情况称为"异常"。(开发过程中的语法和逻辑错误不是异常)原创 2023-07-25 20:32:39 · 35 阅读 · 0 评论 -
java基础之面向对象02
在java类中,可用static修饰属性 ,方法,代码块,内部类。类方法,类中使用static修饰的方法测试可以看到被static修饰的nation被修改后即使我们要输出马龙这个对象的nation也是最终修改成的中国。需要注意的是:静态变量是与类本身关联的,因此它的值在整个类中是共享的。这意味着当一个静态变量的值被修改后,它对所有的实例对象和其他使用该静态变量的地方都会生效。这也是静态变量常用于表示全局或共享状态的原因之一。原创 2023-07-24 19:03:30 · 66 阅读 · 2 评论 -
java基础03-面向对象
面向过程(Procedural Programming)和面向对象(Object-Oriented Programming,简称 OOP)是两种不同的编程范式。面向对象是一种以对象为中心的编程思想。它将程序视为对象的集合,每个对象都有自己的状态(属性)和行为(方法)。在面向对象编程中,数据和操作是紧密相关的,并通过封装、继承和多态等机制实现代码的组织和复用。主要特点包括:1.以对象为核心:程序由多个相互交互的对象组成,每个对象都有自己的属性和方法。原创 2023-07-20 20:11:43 · 634 阅读 · 1 评论 -
java基础02
变量就是系统为程序分配的一块内存单元,用来存储各种类型的数据。简单理解就是内存中一块空间的表示。由于该存储单元中的数据可以发生改变,因此得名为"变量"。原创 2023-07-18 20:34:14 · 160 阅读 · 1 评论 -
初学maven工具
maven工具介绍原创 2023-07-16 14:26:30 · 85 阅读 · 1 评论 -
java基础01
1.JAVA介绍1.JAVA介绍JAVA的起源20世纪90年代,单片式计算机系统诞生,单片式计算机系统不仅廉价,而且功能强大,使用它可以大幅度提升消费性电子产品的智能化程度。SUN公司为了抢占市场先机,在1991年成立了一个由詹姆斯·高斯林(James Gosling)领导,名为“Green”项目小组,目的是开发一种能够在各种消费性电子产品上运行的程序架构。那么使用何种编程语言来设计,是项目小组头疼的事。当时C++较为有优势的,项目小组首先考虑的是。原创 2023-07-04 18:27:22 · 47 阅读 · 0 评论