手机版
热门标签
站点地图
我要投稿
广告合作
联系我们
搜 索
广告位招租
广告位招租
切换导航
首页
编程教程
编程导航
编程百科
编程博文
编程实例
常见问题
产品运营
软件教程
办公软件
栏目导航
▸ PHP
▸ Java
▸ Java SE
▸ Python
▸ NumPy
▸ C#
▸ C&C++
▸ Ruby
▸ VB
▸ asp.Net
▸ Go
▸ Perl
▸ netty
▸ gRPC
▸ Django
▸ Delphi
▸ Jsp
▸ .NET Core
▸ Spring
▸ Flask
▸ Springboot
▸ SpringMVC
▸ Spring Cloud
▸ Lua
▸ fastadmin
▸ Laravel
▸ Mybatis
▸ Asp
▸ Groovy
▸ ThinkPHP
▸ Yii
▸ swoole
公众号推荐
微信公众号搜
"智元新知"
关注
微信扫一扫可直接关注哦!
编程之家
编程语言
String真的不可变吗?
Java中的String是不可变对象 在面向对象及函数编程语言中,不可变对象(英语:Immutable object)是一种对象,在被创造之后,它的状态就不可以被改变。至于状态可以被改变的对象,则被称为可变对象(英语:mutable o...
作者:seven97_top 时间:2024-10-24
String, StringBuffer 和 StringBuilder之间的区别
String, StringBuffer 和 StringBuilder 可变性 String不可变 StringBuffer 和 StringBuilder 可变 线程安全 String 不可变,因此是线程安全的 StringBuilder不是线程安全的 StringBuffer 是线程安全的,内
作者:seven97_top 时间:2024-10-24
讲讲Java的序列化反序列化?
序列化:把对象转换为字节序列的过程称为对象的序列化. 反序列化:把字节序列恢复为对象的过程称为对象的反序列化. 什么时候会用到 当只在本地 JVM 里运行下 Java 实例,这个时候是不需要什么序列化和反序列化的,但...
作者:seven97_top 时间:2024-10-24
数组到底是不是对象
先说结论,是对象!可以继续往下看 数组是不是对象 什么是对象?对象是类的一个实例,有状态和行为 Java对象: 软件的对象也有行为和状态 软件对象的状态称之为属性 方法操作对象内部状态的改变,对象的相互调用也是...
作者:seven97_top 时间:2024-10-24
金融、支付行业的开发者不得不知道的float、double计算误差问题
为什么浮点数 float 或 double 运算的时候会有精度丢失的风险呢? 《阿里巴巴 Java 开发手册》中提到:“浮点数之间的等值判断,基本数据类型不能用 == 来比较,包装数据类型不能用 equals 来判断”。“为了避免精度...
作者:seven97_top 时间:2024-10-24
浅谈Integer缓存机制原理
面试题引入 这里引申出一个经典问题,看下面代码 Integer a = 100; Integer b = 100; System.out.println(a == b);//true Integer c = 200; Integer d = 200; System.out.println(c ==
作者:seven97_top 时间:2024-10-24
能否自定义一个String类使用
先说下结论,可以自定义包名不为java.lang的String类,区别包名是可以正常使用的。 包名不为java.lang package com.seven.jvm; public final class String { /** The value is used for character st
作者:seven97_top 时间:2024-10-24
一文讲清楚static关键字
static能修饰的地方 静态变量 静态变量: 又称为类变量,也就是说这个变量属于类的,类所有的实例都共享静态变量,可以直接通过类名来访问它;静态变量在内存中只存在一份。 实例变量: 每创建一个实例就会产生一个实例...
作者:seven97_top 时间:2024-10-24
String究竟能存储多少字符?
能存储多少字符,通过以下步骤来看 首先String的length方法返回是int。所以理论上长度一定不会超过int的最大值。 编译器对字符串字面量长度的限制源自Java编译器(如javac)在处理常量池时的实现。编译器源码如下,限...
作者:seven97_top 时间:2024-10-24
解决哈希冲突的三种方法
为什么会哈希冲突 我们知道,在使用Map,Set这些集合时,都会重写hashcode方法,但Java中的hashCode方法会将对象映射到一个32位的整数范围(即从-2^31 到 2^31-1)。无论输入数据多么庞大,哈希函数生成的哈希值总是...
作者:seven97_top 时间:2024-10-24
讲讲深拷贝浅拷贝
什么是值传递和引用传递? 值传递是对基本型变量而言的,传递的是该变量的一个副本,改变副本不影响原变量。 引用传递一般是对于对象型变量而言的,传递的是该对象地址的一个副本,并不是原对象本身,两者指向同一片...
作者:seven97_top 时间:2024-10-24
为什么重写hashCode一定也要重写equals方法?
这是一个经典的问题,我们先从==开始看起 == "==" 是运算符 如果比较的对象是基本数据类型,则比较的是其存储的值是否相等; 如果比较的是引用数据类型,则比较的是所指向对象的地址值是否相等(是...
作者:seven97_top 时间:2024-10-24
深入剖析HashMap:理解Hash、底层实现与扩容机制
HashMap是Java中最常用的集合类框架,也是Java语言中非常典型的数据结构, 而HashSet和HashMap者在Java里有着相同的实现,前者仅仅是对后者做了一层包装,也就是说HashSet里面有一个HashMap(适配器模式)。因此了解Ha...
作者:seven97_top 时间:2024-10-15
为什么在EffectiveJava中建议用EnumSet替代位字段,以及使用EnumMap替换序数索引
在EffectiveJava中的第 36条中建议 用 EnumSet 替代位字段,在第37条中建议 用EnumMap替换序数索引,为什么? EnumSet 在EffectiveJava中的第 36条中建议 用 EnumSet 替代位字段 36、用 EnumSet替代位字段 如果枚举类...
作者:seven97_top 时间:2024-10-15
注解的优点?元注解?
介绍 注解是JDK1.5版本开始引入的一个特性,用于对代码进行说明,可以对包、类、接口、字段、方法参数、局部变量等进行注解。主要作用如下: 编写文档——通过注解中标识的元数据可以生成doc文档,这是最常见的,也是...
作者:seven97_top 时间:2024-10-15
Linkedlist源码详解
介绍 LinkedList同时实现了List接口和Deque接口,也就是说它既可以看作一个顺序容器,又可以看作一个队列(Queue),同时又可以看作一个栈(Stack)。这样看来,LinkedList简直就是个全能冠军。当你需要使用栈或者队列时...
作者:seven97_top 时间:2024-10-15
TreeMap源码详解—彻底搞懂红黑树的平衡操作
介绍 TreeSet和TreeMap在Java里有着相同的实现,前者仅仅是对后者做了一层包装,也就是说TreeSet里面有一个TreeMap(适配器模式)。 Java TreeMap实现了SortedMap接口,也就是说会按照key的大小顺序对Map中的元素进行排...
作者:seven97_top 时间:2024-10-15
深入理解ConcurrentHashMap
HashMap为什么线程不安全 put的不安全 由于多线程对HashMap进行put操作,调用了HashMap的putVal(),具体原因: 假设两个线程A、B都在进行put操作,并且hash函数计算出的插入下标是相同的; 当线程A执行完第六行由于时...
作者:seven97_top 时间:2024-10-15
枚举实现原理
枚举的定义 在JDK1.5之前,我们要是想定义一些有关常量的内容,例如定义几个常量,表示从周一到周末,一般都是在一个类,或者一个接口中,写类似于如下代码: public class WeekDayConstant { public static final i...
作者:seven97_top 时间:2024-10-15
为什么Java已经不推荐使用Stack了?
为什么不推荐使用Stack Java已不推荐使用Stack,而是推荐使用更高效的ArrayDeque 为什么不推荐使用 性能低:是因为 Stack 继承自 Vector, 而 Vector 在每个方法中都加了锁。由于需要兼容老的项目,很难在原有的基础...
作者:seven97_top 时间:2024-10-15
注解是如何实现的?
注解是否支持继承 不支持继承 不能使用关键字extends来继承某个@interface,但注解在编译后,编译器会自动继承java.lang.annotation.Annotation接口. 虽然反编译后发现注解继承了Annotation接口,但即使Java的接口可...
作者:seven97_top 时间:2024-10-15
一篇文章讲清楚Java中的反射
介绍 每个类都有一个 Class 对象,包含了与类有关的信息。当编译一个新类时,会产生一个同名的 .class 文件,该文件内容保存着 Class 对象。 类加载相当于 Class 对象的加载。类在第一次使用时才动态加载到 JVM 中,...
作者:seven97_top 时间:2024-10-15
ConcurrentLinkedQueue详解(图文并茂)
前言 ConcurrentLinkedQueue是基于链接节点的无界线程安全队列。此队列按照FIFO(先进先出)原则对元素进行排序。队列的头部是队列中存在时间最长的元素,而队列的尾部则是最近添加的元素。新的元素总是被插入到队列...
作者:seven97_top 时间:2024-10-15
深入浅出Stream流
Java 8的新特性之一就是流stream,配合同版本出现的 Lambda ,使得操作集合(Collection)提供了极大的便利。 案例引入 在JAVA中,涉及到对数组、Collection等集合类中的元素进行操作的时候,通常会通过循环的方式进...
作者:seven97_top 时间:2024-10-15
知道泛型擦除会造成多态的冲突吗?
类型擦除会造成多态的冲突,而JVM的解决方法就是泛型的桥接方法。 举例 现在有这样一个泛型类: class Pair<T> { private T value; public T getValue() { return value; } public void setValue(T va
作者:seven97_top 时间:2024-10-15
了解泛型的类型擦除吗?
概念 Java 泛型(generics)是 JDK 5 中引入的一个新特性, 泛型提供了编译时类型安全检测机制,该机制允许程序员在编译时检测到非法的类型。 泛型的本质是参数化类型,即给类型指定一个参数,然后在使用时再指定此参...
作者:seven97_top 时间:2024-10-15
LinkedHashMap原理详解—从LRU缓存机制说起
写在前面 从一道Leetcode题目说起 首先,来看一下Leetcode里面的一道经典题目:146.LRU缓存机制,题目描述如下: 请你设计并实现一个满足 LRU (最近最少使用) 缓存 约束的数据结构。 实现 LRUCache 类: LRUCache(in...
作者:seven97_top 时间:2024-10-15
解耦利器
为什么需要SPI机制 SPI和API的区别是什么 SPI是一种跟API相对应的反向设计思想:API由实现方确定标准规范和功能,调用方无权做任何干预; 而SPI是由调用方确定标准规范,也就是接口,然后调用方依赖此接口,第三方实...
作者:Java中的SPI机制 - seven97_top 时间:2024-10-15
优先级队列PriorityQueue(图文并茂)
介绍 优先级队列的作用是能保证每次取出的元素都是队列中权值最小(或最大)的。这里元素大小的评判可以通过元素本身的自然顺序(natural ordering),也可以通过构造时传入的比较器(Comparator)。 Java中PriorityQueue实...
作者:seven97_top 时间:2024-10-15
最常用集合
ArrayList介绍 ArrayList实现了List接口,是顺序容器,即元素存放的数据与放进去的顺序相同,允许放入null元素,底层通过数组实现。除该类未实现同步外,其余跟Vector大致相同。每个ArrayList都有一个容量(capacity)...
作者:arraylist详解 - seven97_top 时间:2024-10-15
上一页
1
2
3
4
5
6
7
8
下一页
小编推荐
• 一次彻底讲清如何处理mysql 的死锁问题
• MySQL 通过 Next-Key Locking 技术(行
• 一文彻底弄懂mysql的事务日志,undo lo
• Linux系统控制文件 /etc/sysctl.conf详
• linux命令useradd添加用户详解
• vi 和vim 的区别
• Linux系统下如何监测磁盘的使用空间
• linux中查看和开放端口
• Linux设置开放一个端口
• linux之ftp命令详解
• linux系统下实时监控进程以及定位杀死挂
• Linux下安装jdk8的方法
• 阿里云被挖矿进程wnTKYg入侵的解决方法
• 莫小安 CentOS7使用firewalld打开关闭防
• Linux中more和less命令用法
• linux系统里/opt目录和/usr/local目录的
• 如何使用Siege进行压测?
• 本地访问服务器的nacos地址
热门标签
app
php
工具
微信
电脑
浏览器
京东
iphone
windows
2025年
支付宝
2025
淘宝
会员
堆
ai
循环
ios
小程序
go
微信小程序
12306
编码
微信公众号
小米
操作系统
路由器
接口
拼多多
苹果
主板
android
解决方法
华为
安卓
天猫
传感器
贷款
计算机
https