what is the difference between the "protected and default"
modifiers?
Answer Posted / waheeb
we cannot make a class protected. however it is observed
that both default and protected modifiers exhibit same
characteristics. both are not accessible outside the
package and are accessible within the same package whether
the class is inheriting from the superclass or not.
for example:
package pack1;
public class SuperClass {
public int publicvar;
protected int protectedvar;
private int privatevar;
int defaultvar;
public void publicmethod() {
System.out.println("Public Method");
}
protected void protectedmethod() {
System.out.println("Inside Protected
Method");
}
private void privatemethod() {
System.out.println("Inside Private Method");
}
void defaultmethod(){
System.out.println("Inside Default Var");
}
}
class subclass extends SuperClass{
public static void main(String args[]){
SuperClass obj = new SuperClass();
obj.protectedvar = 10;
obj.defaultvar = 10;
obj.defaultmethod();
/*
protected and default feilds accessible in
the same
*/
}
}
class anotherClass{
public static void main(String args[]){
SuperClass obj = new SuperClass();
obj.protectedvar = 10;
obj.defaultvar = 10;
/* protected and default feilds accessible
in the same
package without extending*/
}
}
| Is This Answer Correct ? | 0 Yes | 3 No |
Post New Answer View All Answers
What is the size of an array?
What is generic type?
How can you handle java exceptions?
What java is used for?
What is final keyword in java?
What is a treeset in java?
What is an off by one error in java?
What are the benefits of immutable objects?
What all methods are used to prevent thread execution ?
What is append in java?
Why do we use return statement?
What are the differences between path and classpath variables?
Why can't you declare a class as protected?
What is the difference between an if statement and a switch statement?
How do you create a sop?