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
Class definition
π Scenario: You are creating a simple program to represent a book in a library system. Each book has a title and an author.
π― Goal: Build a Java class called Book with two fields: title and author. Then create an object of this class and print its details.
π What You'll Learn
Create a class named Book
Add two String fields: title and author
Create an object of Book with title "The Alchemist" and author "Paulo Coelho"
Print the book's title and author using System.out.println
π‘ Why This Matters
π Real World
Classes like Book help organize data about real things in programs, such as books in a library or products in a store.
πΌ Career
Understanding how to define classes and create objects is a fundamental skill for any Java developer.
Progress0 / 4 steps
1
Create the Book class with fields
Write a Java class named Book with two String fields called title and author.
Java
Hint
Use public class Book {} and declare two variables inside.
2
Create a Book object with values
Create a Book object named myBook. Set its title to "The Alchemist" and author to "Paulo Coelho".
Java
Hint
Create the object with new Book() and assign values to fields.
3
Add code to print the book details
Inside the main method, add two System.out.println statements to print myBook.title and myBook.author.
Java
Hint
Use System.out.println to show the values stored in the object.
4
Run the program to see the output
Run the program and observe the output. It should print the book's title and author on separate lines.
Java
Hint
The program should print exactly the title and author on two lines.
Practice
(1/5)
1. What is a class in Java? class Car { }
easy
A. A blueprint to create objects with data and actions
B. A type of variable that stores numbers
C. A method that runs automatically
D. A special kind of loop
Solution
Step 1: Understand the role of a class
A class defines a template or blueprint for creating objects that hold data and actions.
Step 2: Match the definition to options
A blueprint to create objects with data and actions correctly describes a class as a blueprint for objects.
Final Answer:
A blueprint to create objects with data and actions -> Option A
Quick Check:
Class = blueprint for objects [OK]
Hint: Remember: class = blueprint for objects [OK]
Common Mistakes:
Confusing class with variable
Thinking class is a method
Mixing class with loops
2. Which of the following is the correct way to define a class named Person in Java?
easy
A. Person class { }
B. class = Person { }
C. class Person { }
D. define class Person { }
Solution
Step 1: Recall Java class syntax
In Java, a class is defined using the keyword class followed by the class name and braces.
Step 2: Check each option
class Person { } matches the correct syntax: class Person { }. Others have incorrect order or keywords.
Final Answer:
class Person { } -> Option C
Quick Check:
Correct class syntax = class Name { } [OK]
Hint: Use 'class ClassName { }' to define a class [OK]
Common Mistakes:
Swapping 'class' and class name
Using '=' sign in class definition
Using wrong keywords like 'define'
3. What will be the output of this Java code?
class Dog {
String name = "Buddy";
}
public class Main {
public static void main(String[] args) {
Dog d = new Dog();
System.out.println(d.name);
}
}
medium
A. Buddy
B. null
C. Dog
D. Compilation error
Solution
Step 1: Understand object creation and field access
The code creates a Dog object and accesses its field 'name' which is set to "Buddy".
Step 2: Predict the printed output
Printing d.name outputs the string "Buddy" stored in the object.
Final Answer:
Buddy -> Option A
Quick Check:
Object field value = Buddy [OK]
Hint: Access object fields with dot notation: object.field [OK]
Common Mistakes:
Expecting class name instead of field value
Thinking uninitialized fields print 'null'
Confusing syntax causing compile errors
4. Identify the error in this class definition:
class Animal {
String type;
void Animal() {
type = "Mammal";
}
}
medium
A. Class name should be lowercase
B. Constructor has void return type
C. Missing semicolon after type declaration
D. Field 'type' must be static
Solution
Step 1: Check constructor syntax
Constructors in Java must not have a return type, not even void.
Step 2: Identify the error
The method void Animal() is treated as a regular method, not a constructor, causing no constructor defined.
Final Answer:
Constructor has void return type -> Option B
Quick Check:
Constructor = no return type [OK]
Hint: Constructors never have a return type, not even void [OK]
Common Mistakes:
Adding void to constructor
Thinking semicolon needed after field
Believing class names must be lowercase
Assuming fields must be static
5. You want to create a class Book with a field title and a method printTitle() that prints the title. Which code correctly implements this?
hard
A. class Book {
String title;
void printTitle() {
System.out.println("title");
}
}
B. class Book {
String title;
void printTitle() {
print(title);
}
}
C. class Book {
String title;
void printTitle() {
System.out.print("title");
}
}
D. class Book {
String title;
void printTitle() {
System.out.println(title);
}
}
Solution
Step 1: Check method to print field value
Method should use System.out.println with the field variable title to print its value.
Step 2: Evaluate each option
Options printing the literal "title" (with or without newline) are incorrect. Calling undefined print(title) causes an error. Only System.out.println(title) correctly prints the field value.
Final Answer:
class Book {
String title;
void printTitle() {
System.out.println(title);
}
} -> Option D
Quick Check:
Print field with System.out.println(field) [OK]
Hint: Use System.out.println(field) to print variable content [OK]