Constructor:
The constructor is a special type of method. It will be called automatically, whenever an object is declared for the class. This is used to initialize the fields / properties.Def: A constructor is a method of the class, i.e. meant for initializing the data members. The constructor gets called automatically, whenever the object is declared.
Note: In C++, it is not possible to initialize the fields directly, that‘s why you require "Constructor" compulsory. But in C#.NET and VB.NET it is possible initialize the data members directly, along with the declaration. So, to initialize the simple values into the fields, you don‘t require the constructor particularly in C#.NET. But if you want to initialize the fields with some complex code, then you require to write the constructors compulsory in C#.NET and VB.NET also.
Rules of Constructors:
- Its name must be same as "classname".
- It must be defined as "public method".
- It can be defined with/without arguments.
- It can't return any value. So, no return type specification is required.
- "Constructor overloading" is possible. Writing multiple constructors in the same class is called as "Constructor overloading".
Types of Constructors:
i) Implicit constructor:
- A constructor, offered by the compiler implicitly is called as "Implicit constructor".
- But the compiler automatically offers an implicit constructor, for "constructor-less class" only.
ii) Explicit constructor:
- A constructor, defined by the programmer.
- It always overrides the implicit constructor.
Models of Constructors:
i) Default constructor:
- It's a constructor, with no arguments.
ii) Parameterized constructor:
- It's a constructor, with one or more arguments.
Constructor Implementation:
i) Default constructor:
public classname()
{
---------------;
}
ii) Parameterized constructor:
public classname(arguments)
{
---------------;
---------------;
}
Destructor
It is also a method of a class, which is having some special features just like constructor. But it can be called automatically by the compiler, at "object destruction time". Object destruction time means, the time of clearing of memory i.e. allocated for the object. The destructor is used to implement any process that is to be performed at the time of object closing.
Rules for destructor:
- Its name must be defined as class name.
- It' name must be started with "~" character.
- Access modifier can‘t be specified for this.
- No arguments.
- No return value.
- Destructor overloading is not possible. That means multiple destructors can't be defined inside of a class.
Destructor Implementation:
~classname()
{ ----------;
----------;
No comments:
Post a Comment