java教程技术文章
-
this是Java中代表当前对象引用的关键字,仅限实例方法和构造方法使用;用于区分同名成员变量与参数、调用本类其他构造方法(需首行)、返回或传递当前对象实现链式调用、以及在内部类中访问外部类成员。308 收藏 -
可行,但需将非模块化JAR放模块路径使其转为自动模块,按推断名(如fastjson)声明requires,并用--module-path编译运行;反射访问需opens,SPI需uses,命名模糊时用jdeps验证。308 收藏 -
使用String.format("%.2f",3.14159)可保留两位小数并返回字符串;2.System.out.printf("价格:%.2f元%n",19.876)直接格式化输出并换行;3.DecimalFormatdf=newDecimalFormat("0.00")可灵活控制小数位和千分位,适合复杂格式需求。308 收藏 -
Semaphore通过许可机制限制并发线程数,初始化指定许可数量,线程需acquire()获取许可并release()释放,确保最多n个线程访问资源,常用于控制数据库连接等场景,支持公平与非公平模式,应结合try-finally防止许可泄漏。308 收藏 -
hasNextDouble()可安全预判合法浮点数,但仅支持Java字面量格式(如3.14、-2.5e-3、.7),不接受空格、逗号、单位、中文符号等;它不消费输入,依赖默认空白分隔符切分,对"12.34abc"或"12,34"返回false,对"inf"/"NaN"返回true。308 收藏 -
G1MixedGC的触发取决于堆总占用达IHOP阈值(默认45%)并完成并发标记,而非老年代单独占比;其回收Region数量由垃圾价值、停顿约束和空间压力动态权衡决定。307 收藏 -
使用Collectors.groupingBy按HealthStatus枚举对节点列表分组,可得各状态节点集合;支持嵌套收集器统计数量、提取主机名或生成节点摘要,并可用于监控报表输出。307 收藏 -
答案:通过调用OpenWeatherMapAPI获取天气数据,使用HttpURLConnection发送请求,JSON解析后展示城市、温度、湿度和天气状况。307 收藏 -
ServiceLoader是轻量级服务发现机制,基于META-INF/services配置动态加载接口实现类,不支持变量级自动注入;它实现多实现动态选择、运行时插件加载与调用方解耦。306 收藏 -
Java中无法用单个数组实现真正外部排序,但可用数组模拟其核心思想:分块读取生成有序段、最小堆实现k路归并、输出缓冲区控制写入。306 收藏 -
DCL单例易出错主因是未用volatile导致指令重排序,使线程看到未初始化完成的对象;必须用volatile修饰instance、双重检查、锁类对象,缺一不可。306 收藏 -
排查多租户内存残留需聚焦ThreadLocal未清理、TTL传播异常、静态强引用及上下文生命周期错配:先用jstack/Arthas查线程级上下文持有,再用jmap分析实例数,结合GC日志确认老年代残留,最后审计静态变量、缓存key设计与clear()的try-finally覆盖。305 收藏 -
Character.isSpaceChar()精准识别Unicode空格字符(如U+0020、U+3000、U+2003等),仅匹配SPACE_SEPARATOR类字符,不包含制表符、换行符等,适用于多语言空格标准化处理。305 收藏 -
Java注解本身不支持直接存储对象实例或Lambda表达式,但可通过指定转换器类(Class<?extendsConverter>)并在运行时反射实例化,实现灵活的注解驱动类型转换。304 收藏 -
-XX:+AlwaysPreTouch作用是JVM启动时预分配并映射全部堆内存物理页,避免运行时缺页中断;需配合-Xms=-Xmx使用,适用于延迟敏感、大堆及容器环境,但会延长启动时间。304 收藏