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 are the different types of constructor?
What is the major advantage of external iteration over internal iteration?
What do you mean by order of precedence and associativity?
Explain reverse a linked list recursive java solution?
When should a function throw an exception?
What is a function argument in java?
what is the difference between process and thread? : Java thread
Is space a char?
Have you ever used hashtable and dictionary?
What is better - 'bit-shift a value' or 'multiply by 2'?
When super keyword is used?
Is overriding possible in java?
What is the purpose of the wait(), notify(), and notifyall() methods in java programming?
Why multiple inheritance is not supported by java?
What are the differences between c++ and java?