📖 Scenario: You are creating a simple Java program to understand how the public access modifier works. This modifier allows other classes to access the members (variables or methods) marked as public.Imagine you are building a small library system where you want to share the book title publicly so anyone can see it.
🎯 Goal: Build a Java class with a public variable and access it from the main method to print the book title.
📋 What You'll Learn
Create a class named Book with a public String variable called title.
Set the title variable to the exact value "Java Basics".
In the Main class, create an object of the Book class.
Access the title variable from the Book object and print it.
💡 Why This Matters
🌍 Real World
Public access modifiers are used in Java to share data and behavior between different parts of a program safely and clearly.
💼 Career
Understanding access modifiers is essential for writing clean, maintainable Java code and is a common topic in job interviews and professional development.
Progress0 / 4 steps
1
Create the Book class with a public variable
Create a class called Book and inside it declare a public String variable named title and set it to "Java Basics".
Java
Hint
Remember to use the public keyword before the variable type to make it accessible outside the class.
2
Create the Main class with the main method
Create a class called Main with a public static void main(String[] args) method.
Java
Hint
The main method is the entry point of a Java program.
3
Create a Book object and access the title variable
Inside the main method, create an object of the Book class named myBook and access its title variable.
Java
Hint
Use new Book() to create the object and access the title with dot notation.
4
Print the title variable
Add a line inside the main method to print the value of bookTitle using System.out.println.
Java
Hint
Use System.out.println(bookTitle); to display the book title on the screen.
Practice
(1/5)
1. What does the public access modifier mean in Java?
easy
A. The class, method, or variable is accessible from anywhere in the program.
B. The class, method, or variable is accessible only within its own class.
C. The class, method, or variable is accessible only within its own package.
D. The class, method, or variable is accessible only to subclasses.
Solution
Step 1: Understand the meaning of public
The public modifier allows access from any other class in any package.
Step 2: Compare with other access levels
Other modifiers like private or protected restrict access, but public is fully open.
Final Answer:
The class, method, or variable is accessible from anywhere in the program. -> Option A
Quick Check:
Public means open access [OK]
Hint: Public means accessible from anywhere in the program [OK]
Common Mistakes:
Confusing public with private or protected
Thinking public restricts access to package only
Assuming public means only subclass access
2. Which of the following is the correct way to declare a public method in Java?
easy
A. void public myMethod() {}
B. public void myMethod() {}
C. private public void myMethod() {}
D. method public void myMethod() {}
Solution
Step 1: Recall Java method declaration syntax
The access modifier comes first, then the return type, then the method name and parentheses.
Step 2: Check each option
public void myMethod() {} follows correct syntax: public void myMethod() {}. Others have wrong order or invalid keywords.
Final Answer:
public void myMethod() {} -> Option B
Quick Check:
Access modifier first, then return type [OK]
Hint: Access modifier always comes before return type [OK]
Common Mistakes:
Placing 'public' after 'void'
Using invalid keywords like 'method'
Combining multiple access modifiers incorrectly
3. What will be the output of the following Java code?
public class Test {
public int number = 5;
public static void main(String[] args) {
Test obj = new Test();
System.out.println(obj.number);
}
}
medium
A. 5
B. 0
C. Compilation error
D. Runtime error
Solution
Step 1: Understand the public variable access
The variable number is public and initialized to 5, so it can be accessed from main.
Step 2: Trace the program output
The main method creates an object and prints obj.number, which is 5.
Final Answer:
5 -> Option A
Quick Check:
Public variable accessed correctly prints 5 [OK]
Hint: Public variables can be accessed directly from objects [OK]
Common Mistakes:
Assuming default value 0 instead of initialized 5
Thinking public causes errors
Confusing static and instance variables
4. Identify the error in the following code snippet:
class Example {
public int value;
}
public class Main {
public static void main(String[] args) {
Example ex = new Example();
ex.value = 10;
System.out.println(ex.value);
}
}
medium
A. Class Example must be declared public to access its public variable.
B. Main class must not be public.
C. No error; code will compile and print 10.
D. Variable value must be private to be accessed.
Solution
Step 1: Check class and variable access
Class Example is package-private but accessible within the same package. Its public variable value can be accessed.
Step 2: Verify main method usage
Main creates Example object, assigns 10 to value, and prints it. This is valid.
Final Answer:
No error; code will compile and print 10. -> Option C
Quick Check:
Public variable accessible within same package [OK]
Hint: Public variables accessible within same package without public class [OK]
Common Mistakes:
Thinking class must be public to access public members
Confusing variable access with class access
Assuming private needed for access
5. You want to create a Java class with a public method that can be called from any other class, but the class itself should only be accessible within its package. Which of the following is correct?
hard
A. Declare both the class and method as public.
B. Declare the class as private and the method as public.
C. Declare the class as public and the method as private.
D. Declare the class without public and the method as public.
Solution
Step 1: Understand class access modifiers
Classes without public are package-private, so accessible only within the package.
Step 2: Understand method access modifiers
Methods declared public inside a package-private class are accessible from other classes in the same package.
Step 3: Analyze options
Declare the class without public and the method as public. matches the requirement: class package-private, method public. Declare both the class and method as public. makes class public (accessible everywhere). Declare the class as public and the method as private. hides method. Declare the class as private and the method as public. is invalid because classes cannot be private.
Final Answer:
Declare the class without public and the method as public. -> Option D
Quick Check:
Class package-private + public method = accessible in package [OK]
Hint: Class without public is package-private; method public means accessible inside package [OK]
Common Mistakes:
Thinking class can be private
Assuming public class needed for public method
Confusing method access with class access
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.