Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • Home
  • SEARCH
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 749315
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 14, 20262026-05-14T14:25:14+00:00 2026-05-14T14:25:14+00:00

What is null ? Is null an instance of anything? What set does null

  • 0

What is null?

Is null an instance of anything?

What set does null belong to?

How is it represented in the memory?

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-14T14:25:14+00:00Added an answer on May 14, 2026 at 2:25 pm

    Is null an instance of anything?

    No, there is no type which null is an instanceof.

    15.20.2 Type Comparison Operator instanceof

    RelationalExpression:
        RelationalExpression instanceof ReferenceType
    

    At run time, the result of the instanceof operator is true if the value of the RelationalExpression is not null and the reference could be cast to the ReferenceType without raising a ClassCastException. Otherwise the result is false.

    This means that for any type E and R, for any E o, where o == null, o instanceof R is always false.


    What set does ‘null’ belong to?

    JLS 4.1 The Kinds of Types and Values

    There is also a special null type, the type of the expression null, which has no name. Because the null type has no name, it is impossible to declare a variable of the null type or to cast to the null type. The null reference is the only possible value of an expression of null type. The null reference can always be cast to any reference type. In practice, the programmer can ignore the null type and just pretend that null is merely a special literal that can be of any reference type.


    What is null?

    As the JLS quote above says, in practice you can simply pretend that it’s “merely a special literal that can be of any reference type”.

    In Java, null == null (this isn’t always the case in other languages). Note also that by contract, it also has this special property (from java.lang.Object):

    public boolean equals(Object obj)

    For any non-null reference value x, x.equals(null) should return false.

    It is also the default value (for variables that have them) for all reference types:

    JLS 4.12.5 Initial Values of Variables

    • Each class variable, instance variable, or array component is initialized with a default value when it is created:
      • For all reference types, the default value is null.

    How this is used varies. You can use it to enable what is called lazy initialization of fields, where a field would have its initial value of null until it’s actually used, where it’s replaced by the “real” value (which may be expensive to compute).

    There are also other uses. Let’s take a real example from java.lang.System:

    public static Console console()

    Returns: The system console, if any, otherwise null.

    This is a very common use pattern: null is used to denote non-existence of an object.

    Here’s another usage example, this time from java.io.BufferedReader:

    public String readLine() throws IOException

    Returns: A String containing the contents of the line, not including any line-termination characters, or null if the end of the stream has been reached.

    So here, readLine() would return instanceof String for each line, until it finally returns a null to signify the end. This allows you to process each line as follows:

    String line;
    while ((line = reader.readLine()) != null) {
       process(line);
    }
    

    One can design the API so that the termination condition doesn’t depend on readLine() returning null, but one can see that this design has the benefit of making things concise. Note that there is no problem with empty lines, because an empty line "" != null.

    Let’s take another example, this time from java.util.Map<K,V>:

    V get(Object key)

    Returns the value to which the specified key is mapped, or null if this map contains no mapping for the key.

    If this map permits null values, then a return value of null does not necessarily indicate that the map contains no mapping for the key; it’s also possible that the map explicitly maps the key to null. The containsKey operation may be used to distinguish these two cases.

    Here we start to see how using null can complicate things. The first statement says that if the key isn’t mapped, null is returned. The second statement says that even if the key is mapped, null can also be returned.

    In contrast, java.util.Hashtable keeps things simpler by not permitting null keys and values; its V get(Object key), if returns null, unambiguously means that the key isn’t mapped.

    You can read through the rest of the APIs and find where and how null is used. Do keep in mind that they aren’t always the best practice examples.

    Generally speaking, null are used as a special value to signify:

    • Uninitialized state
    • Termination condition
    • Non-existing object
    • An unknown value

    How is it represented in the memory?

    In Java? None of your concern. And it’s best kept that way.


    Is null a good thing?

    This is now borderline subjective. Some people say that null causes many programmer errors that could’ve been avoided. Some say that in a language that catches NullPointerException like Java, it’s good to use it because you will fail-fast on programmer errors. Some people avoid null by using Null object pattern, etc.

    This is a huge topic on its own, so it’s best discussed as answer to another question.

    I will end this with a quote from the inventor of null himself, C.A.R Hoare (of quicksort fame):

    I call it my billion-dollar mistake. It was the invention of the null reference in 1965. At that time, I was designing the first comprehensive type system for references in an object oriented language (ALGOL W). My goal was to ensure that all use of references should be absolutely safe, with checking performed automatically by the compiler. But I couldn’t resist the temptation to put in a null reference, simply because it was so easy to implement. This has led to innumerable errors, vulnerabilities, and system crashes, which have probably caused a billion dollars of pain and damage in the last forty years.

    The video of this presentation goes deeper; it’s a recommended watch.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Ask A Question

Stats

  • Questions 429k
  • Answers 429k
  • Best Answers 0
  • User 1
  • Popular
  • Answers
  • Editorial Team

    How to approach applying for a job at a company ...

    • 7 Answers
  • Editorial Team

    What is a programmer’s life like?

    • 5 Answers
  • Editorial Team

    How to handle personal stress caused by utterly incompetent and ...

    • 5 Answers
  • Editorial Team
    Editorial Team added an answer Not that long ago I launched a Magento store with… May 15, 2026 at 1:30 pm
  • Editorial Team
    Editorial Team added an answer JIRA lets you "archive" old versions, so they stop cluttering… May 15, 2026 at 1:30 pm
  • Editorial Team
    Editorial Team added an answer irb(main):008:0> p.split("\n\n")[1] => "ok this is tested here\n and again… May 15, 2026 at 1:30 pm

Trending Tags

analytics british company computer developers django employee employer english facebook french google interview javascript language life php programmer programs salary

Top Members

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.