C# Corner
Tech
News
Videos
Forums
Trainings
Books
Events
More
Interviews
Jobs
Live
Learn
Career
Members
Blogs
Challenges
Certifications
Bounties
Contribute
Article
Blog
Video
Ebook
Interview Question
Collapse
Feed
Dashboard
Wallet
Learn
Achievements
Network
Refer
Rewards
SharpGPT
Premium
Contribute
Article
Blog
Video
Ebook
Interview Question
Register
Login
C# Tips of Inheritance and Instance of Class
WhatsApp
Gul Md Ershad
11y
7.1
k
0
2
25
Blog
Look at given below steps:
If method in the base and derived class are same and not made virtual in the base class and not being override in the derived then following case will occur :
using
System;
public
class
Program
{
public
static
void
Main()
{
Base objBase =
new
Base();
objBase.Message();
// I amd Base
Derived objDerived =
new
Derived();
objDerived.Message();
// I am Derived
// Now, set the reference of derived class to base class.
objBase =
new
Derived();
objBase.Message();
// I am Base
}
}
public
class
Base
{
public
void
Message()
{
Console.WriteLine(
"I am Base"
);
}
}
public
class
Derived : Base
{
public
void
Message()
{
Console.WriteLine(
"I am Derived"
);
}
}
Output:
I am Base
I am Derived
I am Base
Executing Code URL:
.NET Fiddle
.
If method in the base and derived class are same and made virtual in the base class and being override in the derived then following case will occur:
using
System;
public
class
Program
{
public
static
void
Main()
{
Base objBase =
new
Base();
objBase.Message();
// I amd Base
Derived objDerived =
new
Derived();
objDerived.Message();
// I am Derived
// Now, set the reference of derived class to base class.
objBase =
new
Derived();
objBase.Message();
// I am Derived
}
}
public
class
Base
{
public
virtual
void
Message()
{
Console.WriteLine(
"I am Base"
);
}
}
public
class
Derived : Base
{
public
override
void
Message()
{
Console.WriteLine(
"I am Derived"
);
}
}
Executing Code URL:
DotNetFiddle
.
If method in the base and derived class are same and not made virtual in the base class and not being override in the derived. Also, new keyword is being applied with the derived class method then following case happens:
using
System;
public
class
Program
{
public
static
void
Main()
{
Base objBase =
new
Base();
objBase.Message();
// I amd Base
Derived objDerived =
new
Derived();
objDerived.Message();
// I am Derived
// Now, set the reference of derived class to base class.
objBase =
new
Derived();
objBase.Message();
// I am Base
}
}
public
class
Base
{
public
void
Message()
{
Console.WriteLine(
"I am Base"
);
}
}
public
class
Derived : Base
{
public
new
void
Message()
{
Console.WriteLine(
"I am Derived"
);
}
}
Output:
I am Base
I am Derived
I am Base
Executing Code URL:
DotNetFiddle
.
People also reading
Membership not found