关于死锁,面试的一切都在这里了 死锁是指两个或两个以上的线程在执行过程中,因争夺资源而造成的一种互相等待的现象。若无外力作用,它们都将无法推进下去。,,产生死锁的四个必要条件得烂熟于心:,相应的,如果想在程序运行之前预防发生死锁(也... 网站建设# java# mysql# 手写 4年前290
如何让Java编译器帮你写代码 监控是服务端应用需要具备的一个非常重要的能力,通过监控可以直观的看到核心业务指标、服务运行质量等,而要做到可监控就需要进行相应的监控埋点。大家在埋点过程中经常会编写大量重复代码,虽能实现基本功能,但耗... 网站建设# java# 代码# 埋点 4年前1590
再有人说synchronized是重量级锁,就把这篇文章扔给他看 synchronized作为Java程序员最常用同步工具,很多人却对它的用法和实现原理一知半解,以至于还有不少人认为synchronized是重量级锁,性能较差,尽量少用。,但不可否认的是synch... 网站建设# java# jvm# synchronized 4年前830
java无界通配符的使用场景 ,说明,1、如果正在编写一种可以使用Object类中提供的功能来实现的方法。无界通配符类型是使用通配符指定的。,例如列表 < ? > .这被称为未知类型的列表。,2、当代码在泛型中使用不依... 网站建设# class# java# 使用 4年前340
java伪泛型的介绍 ,说明,1、Java中的泛型是伪泛型。这种泛型实现方法称为类型擦除,基于这种方法实现的泛型称为伪泛型。,2、由于Java的泛型只在编译阶段发挥作用,因此在写代码时,起到了检查的作用。,当代码运行时,它... 网站建设# class# java# list 4年前180
java泛型方法的语法使用 ,说明,1、泛型方法的语法包括类型参数列表(在尖括号中),它出现在方法返回类型之前。,对于静态泛型方法,类型参数必须出现在返回类型之前。,2、泛型方法是引入自己类型参数的方法。,这类似于声明的泛型类型... 网站建设# java# 参数# 方法 4年前360
Go 在信创这一块会输给 Java,想不通...... 大家好,我是投稿的网友草莓。,Go 语言已经开源 10+ 年,从高的关注度,再到云原生时代引爆学习 Go 的浪潮,再到现在的数年后。,其搜索热度和 TIOBE 排名基本维持如下:,,最新的排名第是第 ... 网站建设# go# java# 信创 4年前290
从0学Java之编程语言和软件 编程就是和计算机交流,你写下要计算机逐一执行的命令,然后让计算机来执行。,当然在现实生活中想要别人执行你的命令,首先得让对方听懂你说的话,计算机也一样,但计算机只能听懂16进制。,,那怎么办呢?难道我... 网站建设# java# 听懂# 计算机 4年前460
一次性聊透JVM架构设计,就算八股文也得会 有位小伙伴在我的粉丝群里面问我一个面试题,说面试被问对JVM的理解,不知道怎么回答,今天咱们来聊透,就算是八股文你也得会。另外,往期面试题解析中配套的文档我已经准备好,想获得的可以在我的煮叶简介中找到... 网站建设# hotspot# java# jvm 4年前310
Java字节码,你还可以搲的更深一些! Java真的是长盛不衰,拥有顽强的生命力。其中,字节码机制功不可没。字节码,就像是 Linux 的 ELF。有了它,JVM直接摇身一变,变成了类似操作系统的东西。,要学习字节码,不能仅仅靠看枯燥的文档... 网站建设# class# java# 字节 4年前770
Java多线程专题之线程类和接口入门 大家好,一直以来我都本着用最通俗的话理解核心的知识点, 我认为所有的难点都离不开 「基础知识」 的铺垫。目前正在出一个Java多线程专题长期系列教程,从入门到进阶, 篇幅会较多, 喜欢的话,给个关注️... 网站建设# java# 入门# 多线程 4年前290
Java线程池没用好,我不小心把系统搞崩了 大家好,今天给大家讲一个比较偏硬核技术类的知识,就是 Java 线程池在生产项目中的高并发优化。,可能很多兄弟都听说过 Java 线程池的理论原理,知道他是怎么运作的,但是从来没在项目里玩儿过 Jav... 网站建设# java# 原理# 并发 4年前570
深刻理解Java并发中的有序性问题和解决之道 问题,Java并发情况下总是会遇到各种意向不到的问题,比如下面的代码:,那大家觉得I_Result中的r1值可能是多少呢?,由于并发问题出现的概率比较低,我们可以使用openjdk提供的jcst... 网站建设# java# jcstress# 压测 4年前390
一文读懂Java/O流的使用方法和技巧 ,Java 中的 I/O 流是实现输入和输出的一种机制,可以用来读写文件、网络、内存等各种资源。Java 提供了各种类型的流,包括字节流和字符流,以及面向文本和二进制数据的流。在本文中,我们将深入探讨... 网站建设# java# 字符# 字节 4年前280
Java 如何通过 Socket 查询 IP ? 大家好,我是指北君。,在本文中,我们来学习下如何找到连接到服务器的客户端计算机的IP地址。我们将创建一个简单的客户端-服务器场景,让我们探索用于TCP/IP通信的java.net API。,Java应... 网站建设# ip# java# tcp 4年前330
Java程序员必会Synchronized底层原理剖析 synchronized作为Java程序员最常用同步工具,很多人却对它的用法和实现原理一知半解,以至于还有不少人认为synchronized是重量级锁,性能较差,尽量少用。,但不可否认的是synchr... 网站建设# java# synchronized# 原理 4年前650
Java多线程专题之线程与进程概述 大家好,一直以来我都本着用最通俗的话理解核心的知识点, 我认为所有的难点都离不开 「基础知识」 的铺垫。目前正在出一个Java多线程专题长期系列教程,从入门到进阶, 篇幅会较多, 喜欢的话,给个关注️... 网站建设# java# 多线程# 大家 4年前660
如何在 Java 中使用方法 ,Java 中的方法(在许多其他编程语言中称为“函数”)是被组合在一起并标记为可重用的一块代码。方法很有用,因为它们允许你在不重写相同代码的情况下,执行相同的操作或一系列操作,这不仅意味着你的工作量减... 网站建设# java# main# 代码 4年前420
项目终于用上了插入式注解,真香! 插入式注解处理器在《深入理解Java虚拟机》一书中有一些介绍(前端编译篇有提到),但一直没有机会使用,直到碰到这个需求,觉得再合适不过了,就简单用了一下,这里做个记录。,了解过lombok底层原理的都... 网站建设# java# 插入式# 模块 4年前610
一篇文章搞定Java字符串的基本操作知识 大家好,我是我是Java进阶者,今天给大家分享Java字符串的基本操作知识。,1、在开发过程中,有时需要对字符串的转换操作,例如字符串的字母大小写转换把”abc”转换成”ABC”,基本数据类型转换成字... 网站建设# java# 字符串# 空格 4年前210
内存飙升,罪魁祸首竟是死锁,这样检测和处理减少一半加班时间 你是否因为写出死锁导致半夜加班,扣绩效?你是否为小白程序员,还没有接触过并发编程不知道什么死锁,你是否希望通过并发编程这块突破自己的瓶颈,在新的一年挑战高薪?那么Java并发编程中的死锁是你避不开的... 网站建设# java# 并发# 死锁 4年前510
一种无源代码文件的Java程序修改方法 公司有个老旧项目忽然报错,追踪代码发现逻辑有问题,可又由于公司代码管理不当,导致源码丢失,当前只有可运行的jar包;如果要修复这个问题,只能通过修改字节码文件的方式,然后重新打包部署。,①:需要反编译... 网站建设# jar# java# xxx 4年前300
探索四种流行编程语言的优缺点:Python、Java、JavaScript 和 C++ ,Python、Java、JavaScript 和 C++ 都是广泛使用的编程语言,它们具有自己独特的特性和功能。在此比较中,我们将更深入地研究每种语言并强调它们之间的一些关键差异。,Python 是... 网站建设# c# java# javascript 4年前630
最新报告:Java、.NET安全性最低? 据软件测试公司Veracode最新的报告,超过四分之三使用 Java 和 .NET 编写的应用程序至少存在一个以上的 OWASP Top 10 漏洞。OWASP Top 10 是根据开放 Web 应用... 网站建设# java# net# veracode 4年前300
JDK 19 功能集冻结:Java 19 只有七个新特性 ,从 JDK 19 的概述页面来看,JDK 19 处于 Rampdown Phase Two 阶段,整个功能集已被冻结,将不再对 JEP 进行改动。,Java 19 只有 7 个新特性:,,下面对新... 网站建设# java# jdk# risc 4年前230
Java 中九种 Map 的遍历方式 日常工作中 Map 绝对是我们 Java 程序员高频使用的一种数据结构,从最早的Iterator,到java5支持的foreach,再到java8 Lambda,你经常使用的是哪一种?,,第一种方式是... 网站建设# java# map# 方式 4年前400
从 CPU 说起,深入理解 Java 内存模型! Java 内存模型,许多人会错误地理解成 JVM 的内存模型。但实际上,这两者是完全不同的东西。Java 内存模型定义了 Java 语言如何与内存进行交互,具体地说是 Java 语言运行时的变量,如何... 网站建设# java# jvm# 内存 4年前690
深入理解 Synchronized 的锁优化 我们都知道 synchronized 关键字能实现线程安全,但是你知道这背后的原理是什么吗?今天我们就来讲一讲 synchronized 实现线程同步背后的原因,以及相关的锁优化策略吧。,synchr... 网站建设# java# synchronized# 关键字 4年前540
高效、优雅的对象Copy之MapStruct入门到精通,实战踩坑版 ,大家在开发中,最让人头疼的就是:对象之间的拷贝,前端的VO和数据库的Entity不一致!,性能最好的就是手动set,主要是枯燥且无技术含量,不仅耗费大量时间而且很容易出错;,所以我们要成为优秀的程序... 网站建设# java# mapstruct# 对象 4年前330
JHipster:Java和JavaScript的全栈框架 JHipster是生成Java和JavaScript混合应用程序的成熟框架,支持你喜欢用的开发工具,并提供现成的监控和其他管理功能。,JHipster是一个长期存在且雄心勃勃的Java和JavaScr... 网站建设# java# javascript# jhipster 4年前620
java中EnumSet的使用 ,说明,1、EnumSet可以存储一个枚举中的元素,它提供了一种通过集合来操作枚举类的方式。,2、EnumSet中的所有元素都必须指定枚举类型的枚举值,这种枚举类型在创建EnumSet时是显性的或隐性... 网站建设# enumset# java# 原素 4年前340
为什么越来越多的人选择Spring Boot? 我们都知道,Spring是一个非常经典的应用框架,与其说是Java开发不如说是Spring开发,为什么现在越来越多的人会选择用Spring Boot呢?。要回答这个问题,还需要从Java Web开发的... 网站建设# boot# james# java 4年前330
VS Code加码Java生产力,IDEA危险了 ,VS Code,是一款支持Linux、Windows和macOS的代码编辑器。它可以像集成开发环境(IDE)一样管理整个代码库,同时还可以通过插件进行扩展,被新生代的程序员戏称为“宇宙第一IDE... 网站建设# code# ide# java 4年前490
Java record vs Lombok,谁更胜一筹? 大家好,我是指北君。,Java的 record 关键字是Java 14中引入的一个新的语义特性。record 对于创建小型不可变的对象非常有用。另一方面,Lombok 是一个Java库,可以自动生成一... 网站建设# color# java# lombok 4年前500
今天来聊一聊JVM中的内存溢出和内存泄露 ,JVM是Java虚拟机的缩写,是Java程序的运行环境。Java程序在运行时会通过JVM将字节码翻译成机器码并运行,JVM会管理Java程序的内存、线程等资源。在Java开发中,内存溢出和内存泄露是... 网站建设# java# jvm# 内存 4年前550
java静态代理是什么 ,说明,1、如果代理在程序运行之前就已经存在了,那么这种代理方式就成了静态代理。,在这种情况下,代理通常是由我们在Java代码中定义的。,2、一般来说,静态代理中的代理类和委托类将实现相同的界面,或者... 网站建设# java# 代理# 教程 4年前610
解决Java并发可见性问题,Volatile闪亮登场 很多同学出去面试,都会被问到一个常见的问题:说说你对volatile的理解?,不少初出茅庐的同学可能会有点措手不及,因为可能就是之前没关注过这个。但是网上百度一下呢,不少文章写的很好,但是理论扎的太深... 网站建设# java# volatile# 同学 4年前870
99%的Java程序员会踩的六个坑 ,作为Java程序员的你,不知道有没有踩过一些基础知识的坑。,有时候,某个bug,你查了半天,最后发现竟然是一个非常低级的错误。,有时候,某些代码,这一批数据功能正常,但换了一批数据就出现异常了。,有... 网站建设# java# 代码# 有时候 4年前480
Java 的七种垃圾收集器 用 C 或 C++ 这样的编程语言写一个应用时,需要编写代码来销毁内存中不再需要的对象。当应用程序扩展得越来越复杂时,未使用对象被忽略释放的可能性就越大。这会导致内存泄露,最终内存耗尽,在某个时刻将没... 网站建设# garbage# java# 内存 4年前270
Java并发编程吐血1个月总结最全面的100道面试题 ,这篇文章,给大家聊聊一个百万级并发的中间件系统的内核代码里的锁性能优化。,很多同学都对Java并发编程很感兴趣,学习了很多相关的技术和知识。比如volatile、Atomic、synchronize... 网站建设# java# 中间件# 并发 4年前870
java注解的本质探究 ,本质说明,1、注解的本质是一个继承了Annotation接口的接口。,2、注解准确意义上来说,只不过是一种特殊的注释而已。编译器在对java代码编译字节码的过程中会检测到某个类或者方法被一些注解修饰... 网站建设# java# 探究# 教程 4年前680
面试官:说一下Java的共享内存模型 目前正在出一个Java多线程专题长期系列教程,从入门到进阶含源码解读, 篇幅会较多, 喜欢的话,给个关注️ ~ 本篇内容篇纯理论一点,我们之前给大家讲了多线程的一些知识,首先我们要知道的是在并发编程模... 网站建设# java# 多线程# 并发 4年前250
改善Java代码的八个建议 Java是一门优秀的面向对象的编程语言,针对遇到同样的一个问题会有很多中解法,但是哪种实现方法是最优的或近似最优的,就需要不断的探究JDK的底层原理。本文针对提出了一些改善Java的小建议。希望可以为... 网站建设# java# 代码# 最优 4年前200
java操作数栈的介绍 ,说明,1、操作堆栈,在执行方法的过程中,根据字节代码,将数据写入堆栈或提取数据。,2、主要用于保存计算过程的中间结果,同时作为计算过程中变量的临时存储空间。,3、操作堆栈是jvm执行引擎的工作区域... 网站建设# java# 堆栈# 操作 4年前220
你见过哪些目瞪口呆的 Java 代码技巧? 自从毕业后,今年已经是我工作的第 8 个年头了,我甚至都快忘记了到底是哪年毕业的。,从出来,本人一直在做 Java 相关的工作,现在终于有时间坐下来,写一篇关于 Java 写法的一篇文章,来探讨一下如... 网站建设# java# 写法# 文章 4年前470
我们一起学学嵌入式Web容器 开始之前呢,我们带着几个问题去学习:,1、Spring Boot 嵌入式Web容器是什么?,2、整体流程或结构是怎样的?,3、核心部分是什么?,4、怎么实现的?,在当今的互联网场景中,与终端用户交互的... 网站建设# java# servlet# web 4年前670
java中有哪些基本注解 ,1、java.lang.Override是一个标记类型注解,它被用作标注方法。说明了该方法是继承了父类的方法,就是重写了父类中同名方法。,2、SuppressWarnings通过它告诉编译器忽视可能... 网站建设# java# 教程# 方法 4年前1800
Java Enum – Java 枚举示例讲解 Java 中的枚举(Enum)是一种特殊的数据类型,它包含一组预定义的常量。,在处理不需要更改的值时,通常会使用enum,比如一周中的天数、一年中的季节、颜色等等。,在本文中,我们将看到如何创建一个枚... 网站建设# enum# java# 关键字 4年前100
五款常用的开源无代码测试工具 译者 | 仇凯,审校 | 孙淑娟,编程语言一直是自动化测试、自动化测试人员、框架甚至工作职责中不可或缺的一部分。如果一个遗留项目已经使用了Java进行测试,该公司会为该项目寻找具备Java专业知识的人... 网站建设# java# python# 测试 4年前410
委派模式——从SLF4J说起 ,熟悉JAVA服务器开发的同学应该都使用过日志模块,并且大概率使用过"log4j-over-slf4j"和“slf4j-log4j”这两个包。那么这两个包的区别是什么?为什么会互相引用包含呢?这篇文章... 网站建设# facade# java# logj 4年前340
java获取class实例的4种方式 ,获取方式,1、已知具体的类,通过类的 class 属性获取,该方法最为安全可靠,程序性能最高。,2、已知某个类的实例,调用该实例的 getclass() 方法获取Class对象。,3、已知全类名,且... 网站建设# class# java# 一致 4年前80
程序员简历探秘,java语言发展前景 ,在目前的招聘需求中也可以看出,高级程序员比初级程序员的薪资一般可以高到3倍+,甚至可以是7倍以上!,,随着我国5G、人工智能等领域的发展,互联网企业对人才越来越重视,抛出的薪资也越来越诱人,虽然企业... 网站建设# java# 互联网# 程序员 4年前150
Java可能是迄今为止最好的编程语言,为什么这么说? Java编程具有用户友好性和灵活性,是web应用程序开发人员和程序管理专家的首选编程语言。我们所说的灵活性是指使用Java开发的应用程序可以在任何操作系统上一致地运行,而不管它最初是在哪个操作系统中开... 网站建设# java# 应用程序# 编程 4年前250
Java保证线程安全的方式有哪些? , 一位工作5年的小伙伴面试时被问到这样一道题,说Java保证线程安全的方式有哪些?,今天,我给大家分享一下我的理解。,回答这个问题之前,得先了解导致对象线程不安全的原因,主要有三个:,,原子性和可... 网站建设# java# 线程# 编译器 4年前120
Java中的数据类型转换 与 PHP 或 JavaScript 不同,Java 是一种强类型编程语言。这实质上意味着每个变量都必须使用预定义的数据类型声明,之后不能更改。Java中有两种数据类型:,在本教程中,我们将重点介绍原... 网站建设# float# int# integer 4年前290
Java 8 要倒了? Jenkins 宣布仅支持 Java 11 及以上版本 开源 Devops 工具 Jenkins 宣布: 从 6 月 28 日发布的 Jenkins 2.357 和即将发布的 9 月 LTS 版本开始,Jenkins 最低需要 Java 11。,,Jenk... 网站建设# java# jenkins# 迁移 4年前330
Java应用提速(速度与激情) 作者 | 道延 微波 沈陵 梁希 大熊 断岭 北纬 未宇 岱泽 浮图,什么是速度?速度就是快,快有很多种。,有小李飞刀的快,也有闪电侠的快,当然还有周星星的快:(船家)"我是出了名够快"。(周星星... 网站建设# java# 应用# 提效 4年前320
java动态代理的特点 ,说明,1、JDK动态代理不需要实现界面,只有目标对象需要实现界面。,2、基于接口的动态代理需要使用JDK中的API,在JVM内存中动态构建Proxy对象。,3、需要使用java.lang.refle... 网站建设# java# jdk# proxy 4年前140
java通配符的使用规则 ,说明,1、定义in变量,使用上限通配符。,使用extends关键字。,2、用super关键字用下限通配符来定义out变量。,3、如果In变量可以使用Object类中定义的方法访问,则用无界的通配符... 网站建设# java# 使用# 变量 4年前340
java class实例代表哪些结构 ,结构说明,1、class:外部类,成员(成员内部类,静态内部类),局部内部类,匿名内部类,2、interface:接口,3、[]:数组,4、enum:枚举,5、annotation:注解@inter... 网站建设# class# interface# java 4年前430
换了个数据结构,一不小心把系统性能提升了10倍以上 很多Java开发同学经常有一个疑惑,搞Java开发也需要懂算法吗?本文咱们就来谈谈这个问题。,其实如果你开发一个非常复杂而且有挑战的大型系统,那么必然会在系统中使用算法。同理,如果你可以将算法进行合... 网站建设# hadoop# java# 开发 4年前290
java向下转型是什么意思 ,概念,1、向下转型就是父类对象转成子类对象。我们把一个父类引用Animal类型的引用给了一个 Bird类型 的引用,这就是向下转型,2、格式为,注意 ,向下转型的时候一定要进行强制类型转换,实例,以... 网站建设# java# 向下# 引用 4年前230
java向上转型发生的时机 ,1、直接赋值,2、方法传参,把一个Cat的子类传给一个Animal类型的父类,这里也是能发生向上转型的。,3、方法返回,func方法的返回类型是Animal,但返回的确是一个Cat类型,这里也是发生... 网站建设# animal# cat# java 4年前130
聊聊 JDK8 的 CompletableFuture ,你明白了吗? 前段时间,阿粉已经说过一次CompletableFuture了,但是还是有读者说,感觉不是很清晰,有点乱的样子,今天阿粉就再来说一下这个CompletableFuture的一些API的方法。,Comp... 网站建设# completablefuture# java# 创建 4年前70
简单的六种防止数据重复提交的方法! 作者 | 磊哥,来源 | Java中文社群(ID:javacn666),转载请联系授权(微信ID:GG_Stone),有位朋友,某天突然问磊哥:在 Java 中,防止重复提交最简单的方案是什么?,这句... 网站建设# java# 拦截# 提交 4年前360
使用 Lambda 实现超强的排序功能 ,你好,我是看山。,我们在系统开发过程中,对数据排序是很常见的场景。一般来说,我们可以采用两种方式:,今天要说的是第二种排序方式,在内存中实现数据排序。,首先,我们定义一个基础类,后面我们将根据这个基... 网站建设# comparator# java# 内存 4年前730
了解3D世界的黑魔法-纯Java构造一个简单的3D渲染引擎 作者 | 李历成(徜葆),当今用于游戏和多媒体的3D渲染引擎在数学和编程的复杂性上足以令大多数人望而生畏,从编程接口的OpenGL再到逼真到令人叹为观止的UE5(虚幻五)引擎,后者单单引擎本身(不含调... 网站建设# d# java# ue 4年前750
终于搞懂如何用Java去除HTML标签了 大家好,我是指北君。,在我平时的工作中,偶尔会用 Java 做一些解析HTML的工作。有的时候我需要删除所有的HTML标签,只保留纯文字内容。这个问题在做过一些爬虫工作的朋友来说很简单。下面来说说,我... 网站建设# html# java# 文本处理 4年前520
痛快!SpringBoot终于禁掉了循环依赖! Spring的Bean管理,一直是整个体系中津津乐道的东西。尤其是Bean的循环依赖,更是很多面试官最喜欢考察的2B知识点之一。,但事实上,项目中存在Bean的循环依赖,是代码质量低下的表现。多数人寄... 网站建设# bean# java# springboot 4年前480
一篇文章详解RocketMQ消息中间件 消息中间件在高并发的业务场景占据了非常重要的位置,其中国内的典型代表Java实现的RocketMQ需要重点掌握。,本文重点详解如下5点:,1.RocketMQ的介绍,2.RocketMQ的技术演进,3... 网站建设# apache# java# rocketmq 4年前320
震惊,Java+ lua = 王炸! ,在某些业务场景下,我们可能会遇到 lua 中要调用Java 代码情况,当然这个用 JNI 肯定是可以做到的,但是有更加方便的办法:LuaJavaBridge(LuaJava)和 LuaJ。,luaj... 网站建设# class# java# lua 4年前450
Groovy 语法-控制结构:if,switch,for,try等知识 本篇内容为Groovy学习第30篇内容,从本篇开始将会学习Groovy语法中的控制结构,例如:if/else,switch/case ,try/cathc 等等。,控制结构是指以某种顺序执行的一系列动... 网站建设# else# groovy# java 4年前460
MyBatisPlus联表查询短板有工具补齐了,微服务架构也可以优化了 ,上一篇文章:《年底了我裁完兄弟自己也离职了,复习了Java锁的底层准备面试...》,聊了一下java并发包的公平锁和非公平锁。,这篇文章来聊一下读写锁。所谓的读写锁,就是将一个锁拆分为读锁和... 网站建设# java# 加写# 加读 4年前320
PK大厂的工程师时,小公司的Java工程师是如何沦为炮灰的? 这篇文章,聊一个很多人感兴趣的话题,小公司的Java工程师和大厂Java工程师一起出去求职同一个职位时,前者的竞争力到底差在哪里呢?,搞明白这个事情,相信很多中小公司的同学可以对自己当前的情况以及跟... 网站建设# java# 一个# 大厂 4年前360
JVM 垃圾回收的工作原理 对于程序员来说,掌握 Java 的内存管理机制并不是必须的,但它能够帮助你更好地理解 JVM 是如何处理程序中的变量和类实例的。,Java 之所以能够如此流行,自动 垃圾回收Garbage Colle... 网站建设# java# jvm# 回收 4年前570
在Java中创建随机数的不同方法 在 Java 中,我们可以使用以下类创建随机数:、、.让我们看看它们中的每一个的快速示例,然后我们将讨论它们的差异。RandomSecureRandomThreadLocalRandomSplitta... 网站建设# java# 创建# 方法 4年前140
java桥接模式的优缺点 ,1、优点为抽象与分离,扩展能力强。符合开闭原则、合成复用原则。实现对客户的透明细节。,2、缺点是增加了系统理解和设计的难度。,由于聚合关系建立在抽象层,要求开发者设计和编程抽象化,正确识别系统中两个... 网站建设# java# 优缺点# 抽象 4年前130
大多数初级开发人员不知道的十个 Java 技巧! 有两种类型的开发人员,优秀的开发人员和聪明的开发人员,你是哪一种?掌握一些技巧能让我们变成一个聪明的开发人员。,,从使用 Java 的第一天开始,我们应该就会这么写:,那么你知道 main() 方法的... 网站建设# java# nanotime# 写法 4年前570
一个更简单的字节码增强框架,谁看了案例都会使用! 相对于小傅哥之前编写的字节码编程; ASM、Javassist 系列,Byte Buddy 玩法上更加高级,你可以完全不需要了解一个类和方法块是如何通过 指令码 LDC、LOAD、STORE、IRET... 网站建设# buddy# byte# java 4年前410
为什么用元空间替代永久代? 永久代和元空间都是 HotSpot 虚拟机中的概念,HotSpot 虚拟机是 Sun JDK 和 Open JDK 中自带的虚拟机,也是目前使用范围最广泛的 Java 虚拟机,当我们提到虚拟机时,大概... 网站建设# hotspot# java# jdk 4年前600
分布式锁工具:Redisson Redisson是一个在Redis的基础上实现的Java驻内存数据网格(In-Memory Data Grid)。它不仅提供了一系列的分布式的Java常用对象,还提供了许多分布式服务。,Redisso... 网站建设# java# redis# redisson 4年前660
java如何指定枚举的行为 ,说明,1、枚举不仅可以用来表示常量,有时还可以在枚举中写一些简单的计算逻辑。,2、可以使用抽象的方法来定义每个枚举所需的行为。,实例,以上就是java指定枚举行为的方法,希望对大家有所帮助。 更多J... 网站建设# java# 教程# 枚举 4年前130
java异常编程FutureTask的介绍 ,说明,1、FutureTask类不仅实现了Future接口还实现了Runnable接口,表示一种可生成结果的Runnable。,2、FutureTask类实现了Future接口的开启和取消任务、查询... 网站建设# futuretask# java# runnable 4年前180
面向测试人员的 Java:完整的分步指南 ,测试驱动开发(TDD)背后的思想是,如果你想写出好的代码,你必须先为它写测试,然后弄清楚如何让它们通过。,这样可以很容易地知道您的代码是否按照您的意愿执行,并且可以更轻松地重构您的代码,使其比以往任... 网站建设# java# tdd# 代码 4年前550
Java 以编程方式创建JAR文件 大家好,我是指北君。,在这篇文章中,我们将介绍一下以编程方式创建jar文件的过程。在编写软件时,最终我们需要将其部署到生产状态。在某些情况下,使用带有独立文件的classpath是可以的。通常情况下... 网站建设# jar# java# zip 4年前450
Rust的好搭档,Wasm需要学习下Java 作者丨 B. Cameron Gain,译者丨千山,很难相信,自从2001年互联网泡沫破灭以来,已经过去了20多年。每当科技处于周期性下行轨道时,它仍然是潜在厄运的前兆。我清楚地记得,在2001年经济... 网站建设# java# 代码# 公园 4年前540
排行榜出炉!Java首遭落后C++! 作者丨千山,日前,荷兰软件质量评估公司TIOBE发布2022年12月编程语言排行榜。在最新榜单中,Python依然占据榜首位置岿然不动,而C++在TIOBE排名历史上首次超过Java,以0.12%的... 网站建设# c# java# python 4年前1040
java虚拟机中栈的运行原理 ,运行原理,1、不同线程中所包含的栈帧是不允许存在相互引用的。,2、如果当前方法调用了其他方法,方法返回之际,当前栈帧会传回此方法的执行结果给当前一个栈针,并且虚拟机会丢弃当前栈帧,使得前一个栈帧重新... 网站建设# java# 当前# 方法 4年前320
开发利器Hutool之MapProxy的妙用 Hutool是一个小而全的Java工具类库,通过静态方法封装,降低相关API的学习成本,提高工作效率,使Java拥有函数式语言般的优雅,让Java语言也可以“甜甜的”。,目前公司项目中主要采用Huto... 网站建设# hutool# java# mapproxy 4年前590
全面梳理 Spring Boot 日志体系 说到 Java 日志,很多初学者可能都比较懵,因为这里涉及到太多东西了:Apache Commons Logging、Slf4j、Log4j、Log4j2、Logback、Java Util Logg... 网站建设# apache# java# logging 4年前600
全面掌握软件架构的守护神-ArchUnit ArchUnit 是一个免费、简单和可扩展的库,可以使用任何普通的 Java 单元测试框架检查 Java 代码的架构和编码规则。,ArchUnit 通过分析给定的 Java 字节码,将所有类导入到 J... 网站建设# archunit# java# junit 4年前330
似乎你总也记不住,byte取值范围是 -127~128 还是 -128~127 无论在面试过程中还是平时的技术交流中,似乎有很多小伙伴始终记不住java中byte类型的取值范围是多少。究其原因大部分程序员对这个取值范围是不在意的,因为知道与不知道都不影响你完成工作。另外这种知识点... 网站建设# byte# java# 取值 4年前330
Maven依赖的作用域你到底用对了没有 Maven是目前Java开发主要使用的依赖管理构建工具之一,但是很多人在引用依赖的时候直接引用坐标,而没有考虑依赖的作用范围,结果导致出现这样和那样的问题。今天胖哥就来说明一下Maven引用依赖的一... 网站建设# java# maven# 作用域 4年前490
Observable设计模式简介 译者 | 蔡柱梁,策划 | 言征,Observable设计模式存在于许多Java API和响应式编程中。下面介绍Java中永恒的Observable模式。 ,Observable设计模式用于许多重要... 网站建设# actionlistener# api# java 4年前700
C++与Java“相爱相杀”:一个步步紧逼,一个节节败退 近日,2022年6月TIOBE编程语言排行榜正式发布。不出意外的是,Python继续稳居榜首,C语言、Java、C++、C#分列第2-5位。相比去年同期,C++的占有率大幅提升,而Java的热度和流行... 网站建设# c# java# tiobe 4年前500
如何使用Quarkus进行serverless function开发? Quarkus是一个开源Java框架,它解决了传统框架的弱点,包括大量内存消耗和容器环境的扩展问题。通过Quarkus,Java开发人员可以使用熟悉的技术构建云原生微服务和无服务器功能(serverl... 网站建设# function# functions# java 4年前400
Java中的懒惰实例化与急切实例化:哪个更好? 译者 | 李睿,审校 | 孙淑娟,人们需要了解如何在Java程序中使用懒惰实例化和急切实例化。那么,哪种方法更好?这取决于场景。 ,当实例化在资源使用方面开销很大的Java对象时,用户不希望每次使... 网站建设# java# 急切# 懒惰 4年前560
你知道为啥给JVM分配的内存越大,结果性能越差吗? ,这篇文章,给大家聊一个生产环境的实践经验:线上系统部署的时候,JVM堆内存大小是越大越好吗?,先说明白一个前提,本文主要讨论的是Kafka和Elasticsearch两种分布式系统的线上部署情况,不... 网站建设# java# jvm# 内存 4年前540
Java多线程小记,你学会了吗? 在一个进程中可以有多个执行单元同时运行,来同时完成一个或者多个程序任务,这些执行单元被称为线程。当启动一个java程序系统就会创建一个进程,该进程也会创建一个线程来运行main方法中的代码。操作系统中... 网站建设# java# 代码# 多线程 4年前370