Public members are easy to use but be careful not to expose sensitive data.
Use public only when you want others to access the member freely.
Summary
Public means open and accessible from anywhere.
Use it for classes, methods, or variables you want to share freely.
It helps different parts of your program work together easily.
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.