UrbanPro

Learn .Net Training from the Best Tutors

  • Affordable fees
  • 1-1 or Group class
  • Flexible Timings
  • Verified Tutors

Search in

When can we use the abstract class in C#.NET?

Asked by Last Modified  

1 Answer

Learn .Net

Follow 1
Answer

Please enter your answer

In C#.NET, an abstract class is a class that cannot be instantiated and may contain abstract methods, which are methods without a body. Abstract classes are used when you want to provide a common base class for other classes but want to leave certain methods as abstract, letting the derived classes provide...
read more

In C#.NET, an abstract class is a class that cannot be instantiated and may contain abstract methods, which are methods without a body. Abstract classes are used when you want to provide a common base class for other classes but want to leave certain methods as abstract, letting the derived classes provide their own implementation. Here are some scenarios where you might use abstract classes:

1. **Common Base Class:**
- You can use an abstract class to define a common base class for a group of related classes. This allows you to provide a shared set of fields, properties, and methods to the derived classes.

```csharp
public abstract class Shape
{
public abstract double CalculateArea();
public abstract double CalculatePerimeter();
}

public class Circle : Shape
{
public double Radius { get; set; }

public override double CalculateArea()
{
return Math.PI * Math.Pow(Radius, 2);
}

public override double CalculatePerimeter()
{
return 2 * Math.PI * Radius;
}
}

public class Square : Shape
{
public double SideLength { get; set; }

public override double CalculateArea()
{
return Math.Pow(SideLength, 2);
}

public override double CalculatePerimeter()
{
return 4 * SideLength;
}
}
```

2. **Enforcing a Contract:**
- Abstract classes can define abstract methods that must be implemented by derived classes. This enforces a contract, ensuring that all derived classes provide their own implementation for specific methods.

```csharp
public abstract class DatabaseConnection
{
public string ConnectionString { get; set; }

public abstract void Open();
public abstract void Close();
public abstract void ExecuteQuery(string query);
}
```

3. **Partial Implementation:**
- Abstract classes can provide a partial implementation of methods, leaving some parts to be implemented by derived classes. This is useful when there's common functionality shared among derived classes.

```csharp
public abstract class Animal
{
public void Eat()
{
Console.WriteLine("Animal is eating.");
}

public abstract void MakeSound();
}

public class Dog : Animal
{
public override void MakeSound()
{
Console.WriteLine("Dog barks.");
}
}

public class Cat : Animal
{
public override void MakeSound()
{
Console.WriteLine("Cat meows.");
}
}
```

4. **Preventing Direct Instantiation:**
- Since abstract classes cannot be instantiated directly, they prevent the creation of objects of the abstract class itself. Instances are created through derived classes.

```csharp
// This is not allowed:
// Animal animal = new Animal();

// This is allowed:
Animal dog = new Dog();
```

In summary, abstract classes are used in C#.NET when you want to provide a common base with some default implementation and leave certain methods to be implemented by derived classes. They help in creating a consistent and extensible class hierarchy.

read less
Comments

Related Questions

Looking for WPF online trainer for our consultants. Interested people can approach me. Mode of training :- Online Contents :- Will be provided by us. Timings :- Morning or evening daily for one hour - Max time to finish is 20 days.
Hi Ganesh, Cognia Technologies has a expertise can teach in innovative and real time industry wise having 8+ years of experience and worked for HCL and Capgemini.
Ganesh Kumar
Looking for design patterns classes. Please let me know when is the batch.
QuickITDOtNet provide .Net Design Pattern training in Weekend mode. The trainer has 13 years of experience in technical Architecture and we are having number one ranking in pune on urbanpro . Please...
Durga
1 0
6
What is .Net Ajax?
With the Help of JavaScript sending/Receiving Multiple Data to/from the server using XML(its a DataLayer transfered using HTTP protocals) instead of sending entire pages , thats why it is called Asynchronous Javascript And Xml(AJAX).
Aadarsh
I have completed BCA from SMU in 2013. What I am doing for work in IT industries as employee because I am a backlog student and yet i am a fresher
Sure!!! Not an issue my friend. You can start your career with ASP.NET(C#). This would be the best choice to create your best career deal. Please contact me and will grab the best ASP.NET(C#) tanning. Thank You FRIEND(s).
Amit

Now ask question in any of the 1000+ Categories, and get Answers from Tutors and Trainers on UrbanPro.com

Ask a Question

Related Lessons

Inversion of Control
Problem You have classes that have dependencies on services or components whose concrete type is specified at design time. In this example, ClassA has dependencies on ServiceA and ServiceB. Figure 1 illustrates...

.Net is not tough just it requir skill build
Hello friends which one is better java or .net ? Well you need to know both to make a right full argument. My advice would be pick any one get skilled on that and then learn second one. I believe by...

Angular-2 Developer Training Program Syllabus
Angular2 Developer Training Program Syllabus: Introduction to Angular2. Why Angular2. Angular2 Features: Components, Services and Typescript. Angular2 Components: Templates, Modules, Services...

Read CSV data using ODBC Connection
Codes to read the CSV data using ODBC Connection- Input File: File's Encoding format should be ANSI as below class Student{ public string CollegeId { get; set; } public string AdmissionDate...

ASP.NET Syllabus
Part 1: Getting Started with ASP.NET Lesson 1: Overview Of Asp.Net Lesson 2: Adding Controls To A Web Page Lesson 3: Web Page Processing Lesson 4: Validating User Input Lesson...

Recommended Articles

Hadoop is a framework which has been developed for organizing and analysing big chunks of data for a business. Suppose you have a file larger than your system’s storage capacity and you can’t store it. Hadoop helps in storing bigger files than what could be stored on one particular server. You can therefore store very,...

Read full article >

Whether it was the Internet Era of 90s or the Big Data Era of today, Information Technology (IT) has given birth to several lucrative career options for many. Though there will not be a “significant" increase in demand for IT professionals in 2014 as compared to 2013, a “steady” demand for IT professionals is rest assured...

Read full article >

Business Process outsourcing (BPO) services can be considered as a kind of outsourcing which involves subletting of specific functions associated with any business to a third party service provider. BPO is usually administered as a cost-saving procedure for functions which an organization needs but does not rely upon to...

Read full article >

Microsoft Excel is an electronic spreadsheet tool which is commonly used for financial and statistical data processing. It has been developed by Microsoft and forms a major component of the widely used Microsoft Office. From individual users to the top IT companies, Excel is used worldwide. Excel is one of the most important...

Read full article >

Looking for .Net Training ?

Learn from the Best Tutors on UrbanPro

Are you a Tutor or Training Institute?

Join UrbanPro Today to find students near you
X

Looking for .Net Training Classes?

The best tutors for .Net Training Classes are on UrbanPro

  • Select the best Tutor
  • Book & Attend a Free Demo
  • Pay and start Learning

Learn .Net Training with the Best Tutors

The best Tutors for .Net Training Classes are on UrbanPro

This website uses cookies

We use cookies to improve user experience. Choose what cookies you allow us to use. You can read more about our Cookie Policy in our Privacy Policy

Accept All
Decline All

UrbanPro.com is India's largest network of most trusted tutors and institutes. Over 55 lakh students rely on UrbanPro.com, to fulfill their learning requirements across 1,000+ categories. Using UrbanPro.com, parents, and students can compare multiple Tutors and Institutes and choose the one that best suits their requirements. More than 7.5 lakh verified Tutors and Institutes are helping millions of students every day and growing their tutoring business on UrbanPro.com. Whether you are looking for a tutor to learn mathematics, a German language trainer to brush up your German language skills or an institute to upgrade your IT skills, we have got the best selection of Tutors and Training Institutes for you. Read more