A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 随性 初级黑马   /  2019-7-24 15:03  /  1246 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

众所周知,Objects也是我们在学习Java的时候,必然会碰到和使用的常用类。关于java类Objects,我做了一些梳理。

第一,Objects是什么?

Java 7新增了Objects工具类,它提供了一些工具方法来操作对象,这些工具方法大多是“空指针”安全的,如如你不能确定一个引用变量是否为null,如果贸然的调用该变量的toString()方法,则可能引发NullPointerExcetpion异常;但如果使用Objects类提供的toString(Object o)方法,就不会引发空指针异常,当o为null时,程序将返回一个"null"字符串。

该类是使用final修饰,不能被继承,该类的构造方法被私有化(使用private修饰),不能直接创建对象,该类中所有的方法都是静态方法,可以使用类型直接调用(该类不需要创建对象)

第二, 如何定义Objects类?

//public final class Objects extends Object//

tips:Objects继承自object

第三,常见的方法有哪些?

public class ObjectsDemo {
    //定义一个object类型的变量,它的默认值是null
    static Object obj;
    static Object obj1="1";
    public static void main(String[] args) {
        //输出一个null对象的hashCode值,输出0
        System.out.println(Objects.hashCode(obj));
        //输出一个null对象的toString,输出null
        System.out.println(Objects.toString(obj));
        //直接调用该对象的toString()方法,如果该对象为空会出现NullPointerException异常
        System.out.println(obj.toString());
        //要求obj不能为null,如果obj为null则引发异常
        System.out.println(Objects.requireNonNull(obj));
        //检查指定的对象引用不是 null抛出一个定制的 NullPointerException如果。
        System.out.println(Objects.requireNonNull(obj,"该对象为空"));
        //返回 true如果参数不相等和 false否则。
        System.out.println(Objects.deepEquals(obj, obj1));
        //Objects类的equals方法可以避免空指针异常
        System.out.println(Objects.equals(obj, obj1));
    }
}

如果你有更多的建议,可以在下面留言。希望一起交流和分享。

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马