- 《读尽源码 第六篇》 《读尽源码 第六篇》
- 《读尽源码 第五篇》 《读尽源码 第五篇》
- 面试的时候,经常会被问到==和equals()的区别是什么?以及我们也知道重写equals()时候必须重新hashCode()。这是为什么?既然有了hashCode()方法了,JDK又为什么要提供equals()方法呢?如果在重写equals()时候没有重写hashCode(),在使用HashMap或HashSet的时候可能会出现什么情况?一文搞懂 == 、equals和hashCode==... 面试的时候,经常会被问到==和equals()的区别是什么?以及我们也知道重写equals()时候必须重新hashCode()。这是为什么?既然有了hashCode()方法了,JDK又为什么要提供equals()方法呢?如果在重写equals()时候没有重写hashCode(),在使用HashMap或HashSet的时候可能会出现什么情况?一文搞懂 == 、equals和hashCode==...
- 注解的案例介绍一、引入1、历史JDK5.0 新增 --- 注解(Annotation),也叫元数据2、什么是注解?注解其实就是代码里的特殊标记,这些标记可以在编译,类加载,运行时被读取,并执行相应的处理。通过使用注解,程序员可以在不改变原有逻辑的情况下,在源文件中嵌入一些补充信息。代码分析工具、开发工具和部署工具可以通过这些补充信息进行验证或者进行部署。使用注解时要在其前面增加@符号,并把该... 注解的案例介绍一、引入1、历史JDK5.0 新增 --- 注解(Annotation),也叫元数据2、什么是注解?注解其实就是代码里的特殊标记,这些标记可以在编译,类加载,运行时被读取,并执行相应的处理。通过使用注解,程序员可以在不改变原有逻辑的情况下,在源文件中嵌入一些补充信息。代码分析工具、开发工具和部署工具可以通过这些补充信息进行验证或者进行部署。使用注解时要在其前面增加@符号,并把该...
- Junit单元测试一、引入1、软件测试的目的软件测试的目的是在规定的条件下对程序进行操作,以发现程序错误,衡量软件质量,并对其是否能满足设计要求进行评估的过程。2、测试分类2.1、黑盒测试软件的黑盒测试意味着测试要在软件的接口处进行。这种方法是把测试对象看做一个黑盒子,测试人员完全不考虑程序内部的逻辑结构和内部特性,只依据程序的需求规格说明书,检查程序的功能是否符合它的功能说明。因此黑盒测... Junit单元测试一、引入1、软件测试的目的软件测试的目的是在规定的条件下对程序进行操作,以发现程序错误,衡量软件质量,并对其是否能满足设计要求进行评估的过程。2、测试分类2.1、黑盒测试软件的黑盒测试意味着测试要在软件的接口处进行。这种方法是把测试对象看做一个黑盒子,测试人员完全不考虑程序内部的逻辑结构和内部特性,只依据程序的需求规格说明书,检查程序的功能是否符合它的功能说明。因此黑盒测...
- 基于UDP的网络编程TCP客户端:Socket程序感受到的使用流 :输出流服务器端: ServerSocket --> Socket 程序感受到的使用流 :输入流(客户端和服务器端地位不平等)UDP发送方:DatagramSocket 发送:数据包 DatagramPacket接收方:DatagramSocket 接收:数据包 DatagramPacket(发送方和接收方的地址是平等的)UD... 基于UDP的网络编程TCP客户端:Socket程序感受到的使用流 :输出流服务器端: ServerSocket --> Socket 程序感受到的使用流 :输入流(客户端和服务器端地位不平等)UDP发送方:DatagramSocket 发送:数据包 DatagramPacket接收方:DatagramSocket 接收:数据包 DatagramPacket(发送方和接收方的地址是平等的)UD...
- 基于TCP的网络编程功能:模拟网站的登录,客户端录入账号密码,然后服务器端进行验证。一、功能分解1:单向通信功能:客户端发送一句话到服务器客户端:public class TestClient {//客户端 //这是一个main方法,是程序的入口: public static void main(String[] args) throws IOException { ... 基于TCP的网络编程功能:模拟网站的登录,客户端录入账号密码,然后服务器端进行验证。一、功能分解1:单向通信功能:客户端发送一句话到服务器客户端:public class TestClient {//客户端 //这是一个main方法,是程序的入口: public static void main(String[] args) throws IOException { ...
- C、Java、Python之间的小差异。变量是容器还是标签?Python的for循环为什么不一样?Python为什么不能用i++自增?C语言为什么比较快?Java的JVM是干什么的?C、Java、Python有什么区别,又有什么相似点。.................. C、Java、Python之间的小差异。变量是容器还是标签?Python的for循环为什么不一样?Python为什么不能用i++自增?C语言为什么比较快?Java的JVM是干什么的?C、Java、Python有什么区别,又有什么相似点。..................
- 集合概述在前面基础班我们已经学习过并使用过集合ArrayList<E> ,那么集合到底是什么呢?集合:集合是java中提供的一种容器,可以用来存储多个数据。集合和数组既然都是容器,它们有啥区别呢?数组的长度是固定的。集合的长度是可变的。数组中存储的是同一类型的元素,可以存储基本数据类型值。集合存储的都是对象。而且对象的类型可以不一致。在开发中一般当对象多的时候,使用集合进行存储。 集合框架... 集合概述在前面基础班我们已经学习过并使用过集合ArrayList<E> ,那么集合到底是什么呢?集合:集合是java中提供的一种容器,可以用来存储多个数据。集合和数组既然都是容器,它们有啥区别呢?数组的长度是固定的。集合的长度是可变的。数组中存储的是同一类型的元素,可以存储基本数据类型值。集合存储的都是对象。而且对象的类型可以不一致。在开发中一般当对象多的时候,使用集合进行存储。 集合框架...
- 实战java应用的改造,使之在docker-compose下可以按照业务需求的顺序来启动 实战java应用的改造,使之在docker-compose下可以按照业务需求的顺序来启动
- 线程通信问题应用场景:生产者和消费者问题假设仓库中只能存放一件产品,生产者将生产出来的产品放入仓库,消费者将仓库中产品取走消费如果仓库中没有产品,则生产者将产品放入仓库,否则停止生产并等待,直到仓库中的产品被消费者取走为止如果仓库中放有产品,则消费者可以将产品取走消费,否则停止消费并等待,直到仓库中再次放入产品为止代码结果展示:;代码:1)商品:属性,品牌 ,名字2)线程1:生产者3)线程... 线程通信问题应用场景:生产者和消费者问题假设仓库中只能存放一件产品,生产者将生产出来的产品放入仓库,消费者将仓库中产品取走消费如果仓库中没有产品,则生产者将产品放入仓库,否则停止生产并等待,直到仓库中的产品被消费者取走为止如果仓库中放有产品,则消费者可以将产品取走消费,否则停止消费并等待,直到仓库中再次放入产品为止代码结果展示:;代码:1)商品:属性,品牌 ,名字2)线程1:生产者3)线程...
- 线程安全问题出现问题:(1)出现了两个10张票或者3个10张票:;(2)出现0,-1,-2可能:;上面的代码出现问题:出现了重票,错票 --》 线程安全引起的问题原因:多个线程,在争抢资源的过程中,导致共享的资源出现问题。一个线程还没执行完,另一个线程就参与进来了,开始争抢。解决:在我的程序中加入“锁” --》 加同步 --》 同步监视器一、方法1:同步代码块【1】同步代码块演示1:pack... 线程安全问题出现问题:(1)出现了两个10张票或者3个10张票:;(2)出现0,-1,-2可能:;上面的代码出现问题:出现了重票,错票 --》 线程安全引起的问题原因:多个线程,在争抢资源的过程中,导致共享的资源出现问题。一个线程还没执行完,另一个线程就参与进来了,开始争抢。解决:在我的程序中加入“锁” --》 加同步 --》 同步监视器一、方法1:同步代码块【1】同步代码块演示1:pack...
- 线程的生命周期和常见方法一、线程的生命周期线程声明周期:线程开始 --》 线程消亡线程经历哪些阶段: ;二、线程常见方法(1)start() : 启动当前线程,表面上调用start方法,实际在调用线程里面的run方法(2)run() : 线程类 继承 Thread类 或者 实现Runnable接口的时候,都要重新实现这个run方法,run方法里面是线程要执行的内容(3)currentThre... 线程的生命周期和常见方法一、线程的生命周期线程声明周期:线程开始 --》 线程消亡线程经历哪些阶段: ;二、线程常见方法(1)start() : 启动当前线程,表面上调用start方法,实际在调用线程里面的run方法(2)run() : 线程类 继承 Thread类 或者 实现Runnable接口的时候,都要重新实现这个run方法,run方法里面是线程要执行的内容(3)currentThre...
- 创建线程的三种方式一、继承Thread类在学习多线程之前,以前的代码是单线程的吗?不是,以前也是有三个线程同时执行的。;现在我想自己制造多线程 --》 创建线程 ?线程类 --》 线程对象;package com.lanson.test01;/** * @author : Lansonli * 线程类叫:TestThread,不是说你名字中带线程单词你就具备多线程能力了(争抢资源能力) * ... 创建线程的三种方式一、继承Thread类在学习多线程之前,以前的代码是单线程的吗?不是,以前也是有三个线程同时执行的。;现在我想自己制造多线程 --》 创建线程 ?线程类 --》 线程对象;package com.lanson.test01;/** * @author : Lansonli * 线程类叫:TestThread,不是说你名字中带线程单词你就具备多线程能力了(争抢资源能力) * ...
- 多线程与程序、进程、线程之间概念详解一、程序、进程、线程1、程序(program)是为完成特定任务、用某种语言编写的一组指令的集合,是一段静态的代码。 (程序是静态的)2、进程(process)是程序的一次执行过程。正在运行的一个程序,进程作为资源分配的单位,在内存中会为每个进程分配不同的内存区域。 (进程是动态的)是一个动的过程 ,进程的生命周期 : 有它自身的产生、存在和消亡的过程3、... 多线程与程序、进程、线程之间概念详解一、程序、进程、线程1、程序(program)是为完成特定任务、用某种语言编写的一组指令的集合,是一段静态的代码。 (程序是静态的)2、进程(process)是程序的一次执行过程。正在运行的一个程序,进程作为资源分配的单位,在内存中会为每个进程分配不同的内存区域。 (进程是动态的)是一个动的过程 ,进程的生命周期 : 有它自身的产生、存在和消亡的过程3、...
上滑加载中
推荐直播
-
华为云码道-玩转OpenClaw,在线养虾2026/03/11 周三 19:00-21:00
刘昱,华为云高级工程师/谈心,华为云技术专家/李海仑,上海圭卓智能科技有限公司CEO
OpenClaw 火爆开发者圈,华为云码道最新推出 Skill ——开发者只需输入一句口令,即可部署一个功能完整的「小龙虾」智能体。直播带你玩转华为云码道,玩转OpenClaw
回顾中 -
华为云码道-AI时代应用开发利器2026/03/18 周三 19:00-20:00
童得力,华为云开发者生态运营总监/姚圣伟,华为云HCDE开发者专家
本次直播由华为专家带你实战应用开发,看华为云码道(CodeArts)代码智能体如何在AI时代让你的创意应用快速落地。更有华为云HCDE开发者专家带你用码道玩转JiuwenClaw,让小艺成为你的AI助理。
回顾中 -
Skill 构建 × 智能创作:基于华为云码道的 AI 内容生产提效方案2026/03/25 周三 19:00-20:00
余伟,华为云软件研发工程师/万邵业(万少),华为云HCDE开发者专家
本次直播带来两大实战:华为云码道 Skill-Creator 手把手搭建专属知识库 Skill;如何用码道提效 OpenClaw 小说文本,打造从大纲到成稿的 AI 原创小说全链路。技术干货 + OPC创作思路,一次讲透!
回顾中
热门标签