-
静态代码块在类加载时执行且仅一次,父类先于子类执行;主动引用触发初始化,被动引用不触发;异常导致类加载失败且不可重试;需避免I/O、循环依赖及跨ClassLoader问题。408 收藏 -
最稳方案是手动配置HttpURLConnection:启用重定向、设置超时、解压gzip、检查响应码、正确编码URL、批量读取字节流、按响应头解析字符集、适配TLS协议,避免跳过证书校验。408 收藏 -
生产环境JVM堆内存参数应设为-Xms与-Xmx相等以避免动态调整引发FullGC;容器化需启用-XX:+UseContainerSupport并用-XX:MaxRAMPercentage替代硬编码-Xmx;元空间须显式设置-XX:MetaspaceSize和-XX:MaxMetaspaceSize。408 收藏 -
编程注释规范:单行用//,多行用/.../;单行适合简短说明或临时禁用代码,多行用于复杂逻辑或函数说明;Python、HTML、SQL等有各自语法;注释应解释“为什么”,并随代码及时更新。407 收藏 -
ExecutorCompletionService是Java中用于实现任务完成即处理的工具,它通过结合线程池与阻塞队列,将任务执行与结果获取解耦;提交任务后,可使用take()或poll()方法从队列中获取最先完成的任务结果,无需按提交顺序等待;适用于任务耗时差异大、需快速响应完成结果的场景,如爬虫解析、多源搜索等;相比invokeAll,它提升处理效率,支持非阻塞和超时获取结果,使异步任务结果收集更灵活高效。407 收藏 -
本文详解在RecyclerView列表中通过点击按钮动态切换单项背景色、文字颜色,并支持单选高亮与状态重置,附完整逻辑代码与关键注意事项。406 收藏 -
应根据抽样需求选择合适方法:抽1个用nextInt安全;抽k个不重复且k远小于列表大小用Set去重;k接近列表大小则用Collections.shuffle()后截取,但需先拷贝避免修改原集合;多线程高频采样必须用ThreadLocalRandom.current();务必处理空列表、k≤0、k≥列表长度等边界情况。405 收藏 -
permits是Java17密封类机制中的关键字,用于在sealed类或接口声明末尾显式列出允许继承或实现的子类,仅作编译期继承控制,不授予权限、不影响运行时行为。404 收藏 -
long字面量必须加L/l后缀以避免溢出和类型误判:整数字面量默认为int,超范围需显式标注;推荐大写L防混淆;各进制超int值均须加L。404 收藏 -
NumberFormatException本质是字符串无法构成合法数值字面量的硬性解析失败,需前置校验空值、空白及进制参数,推荐用NumberUtils.isCreatable()安全判断后再解析,溢出仍抛异常。404 收藏 -
老年代缓慢上涨是长生命周期对象堆积信号,非必然内存泄漏;需用jstat观察FullGC后OU阶梯上升,结合jmap-histo比对、全量dump及MAT分析,排查缓存、大对象及G1Humongous分配问题。404 收藏 -
能,但仅限子类内部;外部调用永远走多态,super只是编译器为子类提供的静态绑定后门,不参与虚方法表查找,且不可在静态上下文或外部类中使用。404 收藏 -
Java中package声明必须位于源文件首行,前面仅允许注释或空行,且一个文件只能有一个;包名须全小写、用点分隔、遵循反向域名规则,且必须与文件系统路径严格对应。403 收藏 -
不能用String.compareTo()比较版本号,因其按字典序导致"2.10"<"2.9"错误;应拆分"."后逐段转整数比较,注意空段处理与需求对齐。403 收藏 -
分层编译是JVM动态选择5级渐进优化策略的机制:0级纯解释执行,1级C1基础优化,2/3级C1+profiling,4级C2激进优化;触发依赖调用计数与回边计数,非固定阈值。403 收藏