-
组合优于继承是指在多数代码复用场景中,用成员变量持有对象(has-a)比类继承(is-a)更稳妥可控;核心在于区分类型归属与功能复用,避免继承滥用导致的扩展性差、维护难等问题。
-
该用静态还是非静态取决于访问需求:需访问外部类实例成员则用非静态,仅用静态成员或工具功能则优先static,以避免内存泄漏、支持序列化并提升性能。
-
Java中Arrays.toString()不支持自定义格式,推荐用StringJoiner(可设分隔符、前后缀,空数组返回“[]”)、Arrays.stream()+Collectors.joining(支持元素映射和链式调用)或手动StringBuilder拼接(性能高,需自行处理边界)。
-
BCryptPasswordEncoder默认强度为10,但高并发下易致CPU飙升,推荐显式指定strength=11;必须用matches()比对密码,严禁字符串直接比较;SpringBoot3需显式配置PasswordEncoderBean,且密码长度不得超过72字节。
-
答案:该待办事项系统基于Java实现,包含任务添加、查看、标记完成、删除及文件持久化功能。通过Task类封装任务属性,TodoManager管理任务列表并处理增删改查与数据读写,Main类提供命令行交互界面,使用ObjectInputStream/ObjectOutputStream实现对象序列化存储,程序启动时自动加载历史数据,支持跨会话保存任务状态,适合初学者掌握面向对象编程与基础IO操作。
-
可通过FileStore获取磁盘总空间和可用空间并手动计算百分比,需用getUsableSpace()/getTotalSpace()、避免除零、注意文件系统保留空间及权限影响。
-
super是子类访问父类成员的唯一安全通道,用于无歧义调用父类构造器、方法或字段;必须首行调用super()或super(参数),且仅限非static上下文,不可跨级访问祖父类。
-
Comparable接口使类具备自然排序能力,需重写compareTo方法返回负数、0或正数以定义大小关系,支持Arrays.sort()、Collections.sort()及TreeSet/TreeMap自动排序,且一个类只能有一种自然排序。
-
本文介绍如何使用基础for循环和String方法,实现一个接收字符串数组作为关键词、筛选出“包含全部关键词”的目标字符串并拼接返回的Java方法,兼顾可读性、逻辑正确性与实际可用性。
-
SelectionKey的四种事件(OP_ACCEPT、OP_CONNECT、OP_READ、OP_WRITE)表示内核通知应用某操作已就绪可安全执行:OP_ACCEPT表示服务端三次握手完成待accept;OP_CONNECT表示客户端TCP连接建立完成需finishConnect;OP_READ表示接收缓冲区有数据可读(不保证完整);OP_WRITE表示发送缓冲区有空闲空间可写(通常仅在写未完成时注册)。
-
Fastjson2.x默认不兼容1.x,需显式启用兼容模式;日期序列化须注册处理器;泛型解析必须用TypeReference;禁用ASM会降速但更安全;Context类不可多线程共享。
-
应优先用sudopkginstallopenjdk17安装Java,避免ports编译;配置JAVA_HOME为/usr/local/openjdk17,修改/etc/login.conf设置环境变量与ulimit,并执行cap_mkdb生效。
-
安全获取文件列表需先判空再过滤,用SwingWorker异步加载防卡顿;双击打开前须检查Desktop.isDesktopSupported()和open支持;JFileChooser路径统一转绝对路径;删文件前用FileChannel加锁检测占用;UI更新必须invokeLater切回EDT。
-
本文解析当使用instance::method引用类中重写的方法来实现含默认方法的函数式接口时,为何实际调用的是接口默认实现而非类中重写版本,并通过代码对比阐明方法引用的目标绑定机制与动态分派规则。
-
Java元注解用于定义注解的行为特性,包括:@Target指定作用元素如类、方法等;@Retention控制保留阶段,如SOURCE、CLASS、RUNTIME;@Documented使注解出现在API文档中;@Inherited实现注解的继承;@Repeatable支持重复注解。