什么是null类?

Gau*_*ani 2 java null

在java中我们为这样的任何对象赋值null:

private Apple apple = null;
Run Code Online (Sandbox Code Playgroud)

java中有没有与此相关的类null

因为在Apache common-lang jar中他们定义了这样的null:

public static class Null implements Serializable {
            /**
             * Required for serialization support. Declare serialization compatibility with Commons Lang 1.0            *             * @see java.io.Serializable
             */
           private static final long serialVersionUID = 7092611880189329093L;

            /**
            * Restricted constructor - singleton.
             */
            Null() {
               super();
            }

           /**
             * <p>Ensure singleton.</p>
            * 
           * @return the singleton value
             */
            private Object readResolve() {
                return ObjectUtils.NULL;
            }
       }
Run Code Online (Sandbox Code Playgroud)

为什么他们这样做了?

或者它只是一点点模式?

dav*_*ave 7

在java null中不是一个对象,因此没有类.

它确实有一个类型 - 请参阅语言规范.

Apache创建了一个名为Null(not null)的类.这是完全不同的事情.我猜他们创建了它,所以他们可以null用一个实际的对象来表示- 这可能会使编程在某些方面变得更容易.