Object Oriented Programming Structure (OOPS) – total –
12 marks
Theory – 2/12 marks
1)
What is Data Hiding?
Data hiding is the OOPS(Object Oriented
Programming Structure) concept that enables data to be hidden from the outside
world i.e. the main() function. By default , a
class is private and all the private members cannot be accessed by the
object of the class. It can only be accessed indirectly through its member
functions. In this sense, data is hidden.
There is no possibility that someone maintaining the code may
inadvertently point to or otherwise access the wrong data unintentionally.
Thus, all data not required by an object can be said to be "hidden."
Eg:
class
sample
{
int x; // data hidden
float y;
// data hidden
public:
void enter()
{
cin>>x>>y;
}
void display()
{
cout<<x<<y;
}};
void main()
{ sample s;
s.enter();
//x and y accessed indirectly through public member function enter()
}
2)
What is data abstraction
Data
abstraction is the act of representing only essential features and hiding
background details.
For
eg, we know the operation of a Television, but we may not know the internal
hardware structure and the working of Television.
C++ example:
class
sample
{
int x; // data abstraction
float y;
// These details are completely abstracted from the class to the outside
world
public:
void enter()
{
cin>>x>>y;
}
void display()
{
cout<<x<<y;
}};
void main()
{ sample s;
s.enter();
//object s accesses enter(), without knowing the details of x and y
}
3)
What is an entity?
A
thing with physical and independent existence. In C++ , it is termed as an
instance of a class or an object.
4)
What are properties and behavior of
the class?
The
properties are the attributes of the class i.e. data members
The
member functions are the behavior of the class.
5)
What is a class?
A
class is a user-defined data type that contains within itself data members and
member functions together called as members i.e. a class binds the data that
describes an entity and functions together.
6)
What is meant by instantiation? Why is
the object called instance of the class?
Instantiation
is the process of a variable being constructed by the subroutines of the class.
7)
What is an object?
An
object is an instance of a class. A class’s functions may be implemented only
by way of the object.
Example of class and object
class
sample
{
int x;
float y;
public:
void enter()
{
cin>>x>>y;
}
void display()
{
cout<<x<<y;
}};
void main()
{ sample s;
s.enter();
}
8)
What is encapsulation? Illustrate with
an example in C++?
The
wrapping up of data and functions into a single unit is encapsulation.
Eg:
class
sample
{
int x;
float y;
public:
void enter()
{
cin>>x>>y;
}
void display()
{
cout<<x<<y;
}};
void main()
{ sample s;
s.enter();
//s , the object and enter(), the function are both wrapped together as
a
} // single unit to execute
the member function enter()
9)
What is the difference between a
concrete class and an abstract class?
The only real difference is that a concrete class can be instantiated because it provides (or
inherits) the implementation for all of its methods. An abstract classcannot be
instantiated because at least one method has not been implemented.Abstract
classes are meant
to be extended.
10) What is polymorphism? How is it
implemented?
The
act of representing a message in more than one form is called polymorphism.
Poly means many, morph means changing from one form to another.
Polymorphism
is represented by way of function overloading.
Eg:
Eg:
void prnsqr(int i);//overloaded for integer
void prnsqr(char c);// overloaded for
character
void prnsqr(float f);//overloaded for float
void prnsqr(double d);//overloaded for double
void prnsqr(int i)
{
cout<<"Integer
"<<i<<"\n";
}
void prnsqr(char c)
{
cout<<c<<" is a character
"<<"\n";
}
void prnsqr(float f)
{
cout<<" Float
"<<f"\n";
}
void prnsqr(double d)
{
cout<<"Double
"<<d<<"square is"<<i*i<<"\n";
}
No comments:
Post a Comment