Bird
Raised Fist0
Javaprogramming~5 mins

Object creation in Java - Cheat Sheet & Quick Revision

Choose your learning style10 modes available

Start learning this pattern below

Jump into concepts and practice - no test required

or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Recall & Review
beginner
What is an object in Java?
An object is a real-world entity that has state (attributes) and behavior (methods). It is an instance of a class.
Click to reveal answer
beginner
How do you create an object in Java?
You create an object by using the <code>new</code> keyword followed by the class constructor, for example: <code>ClassName obj = new ClassName();</code>
Click to reveal answer
intermediate
What does the new keyword do in Java?
The new keyword allocates memory for the new object on the heap and calls the constructor to initialize it.
Click to reveal answer
beginner
What is a constructor in Java?
A constructor is a special method used to initialize new objects. It has the same name as the class and no return type.
Click to reveal answer
beginner
Can you create multiple objects from the same class?
Yes, you can create many objects from the same class, each with its own separate state.
Click to reveal answer
Which keyword is used to create an object in Java?
Ainit
Bcreate
Cobject
Dnew
What does a constructor do in Java?
ADeletes an object
BCalls a method
CInitializes a new object
DAllocates memory only
What is the correct way to create an object of class Car?
ACar c = new Car();
BCar c = Car();
Cnew Car c = Car();
Dcreate Car c = new Car();
Where is the memory allocated when you create a new object in Java?
AHeap
BRegister
CStack
DCode segment
Can you create two objects from the same class?
ANo, only one object per class
BYes, multiple objects can be created
COnly if the class is static
DOnly if the class has no constructor
Explain how to create an object in Java and what happens behind the scenes.
Think about the steps from writing code to having a usable object.
You got /4 concepts.
    Describe the role of a constructor in object creation.
    Focus on what makes constructors special compared to other methods.
    You got /4 concepts.

      Practice

      (1/5)
      1. Which of the following is the correct way to create an object of class Car in Java?
      easy
      A. Car myCar = new Car();
      B. Car myCar = Car();
      C. new Car myCar();
      D. Car myCar = new car();

      Solution

      1. Step 1: Understand object creation syntax

        In Java, objects are created using the new keyword followed by the class name and parentheses.
      2. Step 2: Check each option

        Car myCar = new Car(); uses new Car() correctly with proper capitalization and assignment. Others have syntax errors or wrong capitalization.
      3. Final Answer:

        Car myCar = new Car(); -> Option A
      4. Quick Check:

        Use new ClassName() to create objects [OK]
      Hint: Remember: new + ClassName() creates an object [OK]
      Common Mistakes:
      • Omitting the new keyword
      • Using wrong capitalization for class name
      • Missing parentheses after class name
      2. Which of the following lines will cause a syntax error when creating an object of class Book?
      easy
      A. Book b=new Book();
      B. Book b = new Book();
      C. Book b = new Book;
      D. Book b = new Book( );

      Solution

      1. Step 1: Recall syntax for object creation

        In Java, when creating an object, parentheses must follow the class name even if the constructor has no parameters.
      2. Step 2: Identify the incorrect option

        Book b = new Book; misses the parentheses after new Book, causing a syntax error. Others are correct.
      3. Final Answer:

        Book b = new Book; -> Option C
      4. Quick Check:

        Always use parentheses after class name in new [OK]
      Hint: Always include () after class name when using new [OK]
      Common Mistakes:
      • Forgetting parentheses after class name
      • Confusing object creation with method calls
      • Using semicolon inside parentheses
      3. What will be the output of the following code?
      class Dog {
          String name;
          Dog(String n) {
              name = n;
          }
      }
      
      public class Main {
          public static void main(String[] args) {
              Dog d = new Dog("Buddy");
              System.out.println(d.name);
          }
      }
      medium
      A. Buddy
      B. null
      C. Dog@someHashCode
      D. Compilation error

      Solution

      1. Step 1: Understand constructor assignment

        The constructor sets the name field to the string passed, which is "Buddy".
      2. Step 2: Check output of print statement

        Printing d.name outputs the string "Buddy" stored in the object.
      3. Final Answer:

        Buddy -> Option A
      4. Quick Check:

        Constructor sets field, printing field shows assigned value [OK]
      Hint: Constructor sets values; print field to see stored data [OK]
      Common Mistakes:
      • Expecting default null instead of assigned value
      • Confusing object reference print with field print
      • Missing constructor parameters
      4. Identify the error in the following code snippet:
      class Person {
          String name;
          Person(String n) {
              name = n;
          }
      }
      
      public class Test {
          public static void main(String[] args) {
              Person p = Person("Alice");
              System.out.println(p.name);
          }
      }
      medium
      A. Missing semicolon after System.out.println
      B. Constructor name does not match class name
      C. Variable p is not declared
      D. Missing new keyword when creating object

      Solution

      1. Step 1: Check object creation syntax

        The code tries to create an object with Person("Alice") but misses the new keyword.
      2. Step 2: Confirm other parts are correct

        Constructor name matches class name, variable is declared, and semicolon is present.
      3. Final Answer:

        Missing new keyword when creating object -> Option D
      4. Quick Check:

        Use new keyword to create objects [OK]
      Hint: Always use new before class name to create objects [OK]
      Common Mistakes:
      • Omitting new keyword
      • Confusing method call with object creation
      • Incorrect constructor naming
      5. Given the class below, which code correctly creates two Student objects with names "John" and "Jane" and prints their names?
      class Student {
          String name;
          Student(String n) {
              name = n;
          }
      }
      hard
      A. Student s1 = new Student("John"); Student s2 = new Student(); System.out.println(s1.name + ", " + s2.name);
      B. Student s1 = new Student("John"); Student s2 = new Student("Jane"); System.out.println(s1.name + ", " + s2.name);
      C. Student s1 = new Student(); Student s2 = new Student(); System.out.println(s1.name + ", " + s2.name);
      D. Student s1 = Student("John"); Student s2 = Student("Jane"); System.out.println(s1.name + ", " + s2.name);

      Solution

      1. Step 1: Check constructor usage

        The constructor requires a String parameter. Student s1 = new Student("John"); Student s2 = new Student("Jane"); System.out.println(s1.name + ", " + s2.name); correctly passes names "John" and "Jane".
      2. Step 2: Verify object creation and printing

        Student s1 = new Student("John"); Student s2 = new Student("Jane"); System.out.println(s1.name + ", " + s2.name); creates both objects properly and prints their names separated by a comma.
      3. Final Answer:

        Student s1 = new Student("John"); Student s2 = new Student("Jane"); System.out.println(s1.name + ", " + s2.name); -> Option B
      4. Quick Check:

        Use new with constructor parameters to create objects [OK]
      Hint: Pass required parameters in new ClassName(params) [OK]
      Common Mistakes:
      • Calling constructor without new keyword
      • Using default constructor when none exists
      • Not passing required parameters