网站建设与规划前景简单企业网站模板免费
网站建设与规划前景,简单企业网站模板免费,wordpress 表单附件,网站搭建 主机推荐一、Object 类#xff08;Java 顶级父类#xff09;所有类直接 / 间接继承 Object#xff0c;为所有对象提供统一基础方法#xff0c;无特殊声明时子类默认调用其空参构造完成初始化。1. 核心方法toString()默认行为#xff1a;返回类名哈希码值#xff0c;无业务意义&am…一、Object 类Java 顶级父类所有类直接 / 间接继承 Object为所有对象提供统一基础方法无特殊声明时子类默认调用其空参构造完成初始化。1. 核心方法toString()默认行为返回类名哈希码值无业务意义打印对象时会自动调用此方法。开发规范必须重写拼接对象属性为有意义的字符串方便调试和查看对象信息。equals(Object obj)默认行为比较两个对象的内存地址判断是否为同一个对象。开发规范几乎都要重写改为比较对象属性值是否相等重写时建议结合 Objects 工具类避免空指针。clone ()对象克隆核心作用复制对象将原对象属性值完整拷贝给新对象。实现前提① 实现Cloneable标记接口无抽象方法仅标识可克隆② 重写 clone () 并处理CloneNotSupportedException异常。克隆类型浅克隆基本数据类型复制值引用数据类型仅复制地址新旧对象共享引用对象。深克隆引用数据类型重新创建对象新旧对象的引用属性完全独立互不影响。二、Objects 工具类对象操作工具避免空指针所有方法为静态方法直接通过Objects.方法名()调用核心解决 Object 类方法的空指针问题是开发首选。核心方法equals (Object a, Object b)先做非空判断再调用对象的 equals ()避免空指针异常。isNull (Object obj)判断对象是否为 null为 null 返回 true。nonNull (Object obj)判断对象是否非 null结果与 isNull () 相反。三、BigInteger 类处理超大整数突破 long 范围用于操作超出long取值范围的超大整数支持高精度整数运算对象一旦创建值不可修改所有运算都会返回新的 BigInteger 对象。1. 对象创建推荐静态方法静态方法BigInteger.valueOf (long val)适用于未超出 long 范围的数内部有对象池优化性能更高。构造方法BigInteger (String val)通过数字字符串创建超大整数核心方式。BigInteger (String val, int radix)按指定进制2/8/16 等解析字符串为整数。BigInteger (int num, Random rnd)生成[0, 2^num - 1]范围内的随机大整数。2. 常用运算方法加法add (BigInteger val)减法subtract (BigInteger val)乘法multiply (BigInteger val)除法divide (BigInteger val)仅返回商除尽取商余divideAndRemainder (BigInteger val)返回商和余数的数组次幂pow (int exponent)最值max (BigInteger val) /min (BigInteger val)四、BigDecimal 类高精度浮点数解决精度丢失用于处理高精度小数运算彻底解决double/float的浮点精度丢失问题是金融、电商等精确计算场景的唯一选择对象不可变运算返回新对象。1. 对象创建避坑禁止直接用 double 构造静态方法推荐BigDecimal.valueOf (double val)适用于未超出 double 范围的数有对象池优化。构造方法BigDecimal (String val)通过数字字符串创建无精度丢失是最高精度的方式推荐。BigDecimal (double val)不推荐因 double 本身存在精度误差会导致创建的对象值不准确。2. 常用运算方法加法add (BigDecimal val)减法subtract (BigDecimal val)乘法multiply (BigDecimal val)除法divide (BigDecimal val)除不尽时抛出异常禁止直接使用安全除法推荐divide (BigDecimal val, int scale, RoundingMode mode)scale保留的小数位数。mode舍入模式如RoundingMode.HALF_UP四舍五入、RoundingMode.DOWN直接舍弃。