自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 学习交流论坛-测试报告

【代码】学习交流论坛-测试报告。

2024-04-25 19:01:30 1031 1

原创 探讨TCP的可靠性以及三次握手的奥秘

在互联网的复杂世界中,TCP(传输控制协议)扮演着一个不可或缺的角色,确保我们的数据能够准确无误地在世界各地流动。它是一种面向、、, 的传输层通信协议。今天,我们将一起探索TCP的可靠性背后的原理,特别是那个让人好奇的问题:为什么是三次握手,不是两次、也不是四次?TCP的设计目标是提供一种可靠的数据传输服务,在无法预测的网络环境中,这是一项挑战。以下是TCP确保数据可靠性的几种核心机制:情况① 数据直接丢了,接收方根本没有收到情况① 接收方收到了,但是返回的ack丢了要提高效率,每次等待ACK的时间就要花

2024-03-16 17:40:53 979 2

原创 单例模式及线程安全的实践

🎈在多线程环境下实现一个既安全又高效的单例模式需要一些技巧。根据你的需求和具体情况,你可以选择加锁、双重检查或者静态内部类的方法。如果你在乎性能,双重检查和静态内部类是不错的选择,因为它们在保证了线程安全的同时,也考虑到了效率。

2024-03-08 15:53:44 1718 2

原创 Java线程安全问题及其解决方案

Java开发者必须深入理解线程安全问题的根本原因,并熟练掌握解决这些问题的技术,才能确保并发应用的稳定性和性能。在多线程编程中,线程安全问题是一个常见且棘手的问题。所以这篇博客主要探讨线程安全问题的原因,并概述Java中用于解决这些问题的关键技术.:编译器或处理器为优化执行效率而进行的指令重排序,可能会导致其他线程看到意想不到的执行顺序。:一个由多步组成的操作如果在没有完成之前被其他线程中断,就可能导致数据状态的不一致。:一个线程对共享变量的修改可能对其他线程不可见,这通常是由线程各自的缓存导致的。

2024-03-07 15:39:08 413

原创 Java线程状态解析:多线程编程指南

本博客文章探讨了Java中线程的各种状态、它们的含义以及线程在这些状态之间转换的条件。处于此状态的线程要么正在Java虚拟机(JVM)中执行,要么正在等待被线程调度器选中执行。它将一直保持此状态,直到被线程调度器选择执行。就像刚出生的婴儿一样,线程被创建了,但还没开始工作。下面的这六种状态代表了线程执行生命周期的不同阶段。方法),然后它就跳到了“准备好了,随时可以干活”的状态(状态类似于等待状态,但有指定的等待时间。现在,它就等着被分配任务,随时准备开始执行。这时,它就像是被挡在了门外,等待进入的许可。

2024-03-06 15:07:24 939 2

原创 深入探索Java线程管理:Thread类的全面指南

类在此过程中扮演着中心角色,提供了丰富的方法来创建、控制并管理线程的生命周期。从基本的线程创建到高级的线程同步控制,理解。线程中断是一种协作机制,用于请求线程停止当前操作并执行其他任务。Java的多线程管理是构建高效、响应快速应用程序的基石之一。方法以定义线程执行的操作。类的使用是每个Java程序员的必备技能。方法实现的,这些方法用于线程间的协调。方法实现,使当前线程暂停执行指定时间。静态方法获取当前正在执行的线程实例。接口的线程创建更加简洁。对象的构造器,然后通过。方法内部,可以通过调用。

2024-03-04 14:38:24 842 1

原创 深入理解Java线程:run 与 start 方法的区别

通过以上分析和示例,我们可以清楚地看到run方法和start方法之间的区别。start方法是多线程编程的核心,它启动一个新线程并使得线程的运行与其他线程并行进行。而直接调用run方法则仅仅是在当前线程中顺序执行run方法中的代码,不会产生新的线程执行流。掌握这两个方法的区别对于使用Java进行多线程编程非常重要,它可以帮助我们更好地设计程序结构,充分利用多线程带来的并行处理能力。

2024-03-04 14:11:04 524 1

原创 进程与线程:通过实际生活来解析计算机的基本运作单位

他们一起分享家里的资源(比如电视、冰箱),就像线程共享进程的内存和资源。每个成员(线程)都有自己的任务和责任,比如爸爸负责赚钱养家,妈妈负责家务,孩子们负责学习。家庭(进程)是社会(操作系统)的基本单位,拥有自己的住所(内存空间)和生活资源(系统资源)。当你开启一个应用,比如你的浏览器,你其实就是在邀请一个新的家庭(进程)搬进了你电脑的社区。一个进程可以包含多个线程,共享进程资源如内存和文件句柄,但每个线程拥有自己的执行序列和程序计数器。拥有独立的地址空间,进程间的数据是隔离的。的,随时间逐步推进。

2024-03-03 18:08:22 1064 2

原创 电脑里的“餐厅”:进程与进程调度

通过深入理解进程的状态、上下文和记账信息,我们可以更好地把握进程调度的整个画面,就像是了解餐厅每位顾客的需求和服务员的工作流程一样。这些细节帮助操作系统更加高效和公平地管理多个进程,确保电脑的流畅运行。

2024-03-02 13:44:21 369

原创 使用JDBC操作数据库

JDBC,全称是Java Database Connectivity,就是Java数据库连接,它是一个Java API,用于Java程序和数据库之间的通信。简单来说,就像是一个桥梁,让Java应用程序能够执行SQL语句,以查询和操作数据库中的数据。

2024-03-02 10:22:52 1165 5

原创 简单了解B树和B+树

B树和B+树都是优化了数据读取性能的树状数据结构,它们通过不同的方式减少数据访问的层数,从而提高效率.

2024-02-28 22:21:49 613 1

原创 Java异常处理详解

在Java中,异常是在程序执行过程中出现的不正常情况,这些情况会打断正常的指令流。Java处理异常的方式是中断处理。有时候,我们需要根据特定的应用需求来定义异常。这可以通过继承Exception类或任何其子类来实现。

2024-01-11 16:58:08 438 1

原创 补 : StringBuilder与StringBuffer

和类在Java中用于创建和操作动态字符串。这两个类的主要区别在于线程安全性。:在Java 5中引入,不是线程安全的。在单线程环境下,由于避免了同步开销,其性能通常优于。:存在于早期的Java版本中,是线程安全的。当在多线程环境中操作字符串时,它提供同步方法。

2024-01-07 13:42:02 933 2

原创 Java中的String类:深入分析与高级应用

String类是Java中用于表示字符串的类,位于java.lang包中。它是不可变的,一旦创建,其值就不可以更改。

2024-01-07 13:36:44 951 1

原创 JavaSE基础语法实现图书管理系统

通过这个简易的图书管理系统项目,我们可以看到即使是仅使用JavaSE的基础语法,也足以构建出具有实际功能的应用程序。这个系统虽简单,但涵盖了面向对象编程的基本概念,如类、对象、方法,继承,多态,是初学者学习Java的良好实践。随着我们对Java知识的深入,还可以在此基础上增加更多功能,如数据持久化、图形用户界面等,以丰富和扩展你的项目。

2024-01-07 13:26:07 1029 1

原创 Java中接口的深入解析

在Java中,接口是一种特殊的引用类型,它定义了一组方法规范,但不实现这些方法(除了默认方法和静态方法)。接口是一种纯粹的抽象规范,没有状态(字段都是的)。

2023-12-29 22:43:02 862 1

原创 深入理解 Java 中的多态性:探索 instanceof 关键字

深入理解 Java 中的多态性:探索 instanceof 关键字

2023-12-29 07:30:00 816 1

原创 Java中静态代码块、实例代码块和静态方法的执行顺序详解(Main方法,构造方法)

文章示例清晰地展示了静态代码块、静态方法和实例代码块的执行顺序。在Java编程中,理解静态代码块、实例代码块和静态方法的执行顺序对于编写高效和可靠的代码至关重要。实例代码块在每次创建类的实例时执行。它们在构造方法之前执行,但在任何静态代码块之后,因为实例的创建总是在类加载之后。静态代码块在类第一次被加载到JVM时执行,仅执行一次。子类继承父类,则父类和子类中的静态代码块、实例代码块和静态方法的执行顺序。构造方法在实例代码块之后执行,每次创建类的新实例时),它将在静态代码块之后执行。

2023-12-28 09:12:55 2073 1

原创 Java中的static关键字:深入剖析与实践

static,作为一个非访问修饰符,用于创建类的静态成员。这些成员与类本身相关联,而不是与类的任何特定实例相关联。

2023-12-28 08:00:00 828 1

原创 补:Java中重写(Overriding)与重载(Overloading)的区别

Java中重写与重载的区别

2023-12-27 20:03:18 1023 3

原创 探究Java面向对象编程:继承、封装与多态

深入探究Java面向对象编程:继承、封装与多态!

2023-12-27 19:43:22 1993 1

原创 [ 数据结构 ] -- 二叉树

对于深度为K的,有n个结点的二叉树,当且仅当其每一个结点都与深度为K的满二叉树中编号从1至n的结点一一对应时称之为完全二叉树。:一棵二叉树是结点的一个有限集合,该集合或者为空,或者是由一个根节点加上两棵别称为左子树和右子树的二叉树组成。双亲节点或父节点:若一个节点含有子节点,则这个节点称为其子节点的父节点;节点的层次:从根开始定义起,根为第1层,根的子节点为第2层,以此类推;孩子节点或子节点:一个节点含有的子树的根节点称为该节点的子节点;子孙:以某节点为根的子树中任一节点都称为该节点的子孙。

2023-10-19 17:50:10 33

原创 三子棋游戏(呆呆详解版)

电脑有点呆呆的三子棋游戏 (不过是详解版!!)

2022-07-29 18:41:39 726 7

原创 猜数字游戏

一个简单的猜数字游戏

2022-07-23 22:40:21 623 5

空空如也

空空如也

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

TA关注的人

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