What is meant by Encapsulation? Can you write a class to
explain encapsulation?
Answer Posted / anjani kumar jha
Binding the Function with its associated data together is
called encapsulation(Tough definition but here is example also)
Think this senario
public class Anjani{
public int size;
public int weight;
...
}
public class Jha {
public static void main (String [] args) {
Anjani a = new Anjani();
a.size = -5; // Legal but bad!!
}
}
if somebody change ur size from -5 to -10; so sad ..........
And now you're in trouble. How are you going to change the
class in a way that
lets you handle the issues that come up when somebody
changes the size variable
to a value that causes problems? Your only choice is to go
back in and write method
code for adjusting size (a setSize(int a) method, for
example), and then
protect the size variable with, say, a private access
modifier. But as soon as you
make that change to your code, you break everyone else's!
The ability to make changes in your implementation code
without breaking the
code of others who use your code is a key benefit of
encapsulation.
Now how u will do this............
Keep instance variables protected (with an access modifier,
often private).
and Make public accessor methods, and force calling code to
use those methods
rather than directly accessing the instance variable.
and For the methods, use the JavaBeans naming convention of
set<someProperty> and get<someProperty>.
so how u will write the code........
full code of incapsulation
class Anjani{
private int size;
public int setSize(int size)
{
this.size=size;
return size;
}
public int getSize()
{
this.size=size;
return size;
}
}
public class jha {
public static void main (String [] args) {
Anjani a = new Anjani();
int x=a.getSize();
a.setSize(10);
System.out.println(a.setSize(10));
}
}
Thanks and Regards
Anjani Kumar Jha
09623154095
CDAC PUNE
| Is This Answer Correct ? | 3 Yes | 5 No |
Post New Answer View All Answers
What methods are used in Servlet?Applet communication?
When a byte datatype is used?
Define how destructors are defined in java?
Difference between Preemptive scheduling vs. Time slicing?
What is the use of keywords in java?
Explain what do you mean by functional overloading in java?
What is the base class of all exception classes?
What are access specifiers in java ?
What is an abstract method in java programming?
What do you mean by platform independence? What is an interface?
What flag up means?
Is void a return type?
Is it compulsory for a try block to be followed by a catch block in java for exception handling?
Explain the difference between runnable and callable interface in java?
Can a static block throw exception?