EDUCBA

EDUCBA

MENUMENU
  • Free Tutorials
  • Free Courses
  • Certification Courses
  • 600+ Courses All in One Bundle
  • Login

C# Class

By Priya PedamkarPriya Pedamkar

Home » Software Development » Software Development Tutorials » C# Tutorial » C# Class

c# class

Introduction to C# Class

In this article, we will learn about C# Class. Class is the blueprint of the objects which are created. In a real-time scenario let us suppose Car is a class. So the car has certain characteristics like shape, speed, interior, color, and so many other things.  So a lot of companies make cars that meet these requirements. For example every car of Maruti, Hyundai has these objects. We can define a class named car and creates the objects as per the characteristic of the car. Similarly in OOP or object-oriented program, a class have many properties like event, methods, fields, etc.  A class enables a programmer to create custom types of objects as per their requirements.

Syntax:

Start Your Free Software Development Course

Web development, programming languages, Software testing & others

We can define the class with the keyword named the class followed by the name of the class which we will decide and it enclosed by a pair of curly braces.

Class Test {  }

Examples to Implement C# Class

Below are the examples which show how it can be implemented

Example #1

Abstract Class

Code:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
public abstract class Animals
{
public abstract void aml ();      // abstract class method
}
public class Cat : Animals     // inheritance
{
public override void aml()
{
Console.WriteLine("This is first animal");
}
}
public class Dog : Animals   // another class inheritance
{
public override void aml()
{
Console.WriteLine("This is second animal");
}
}
public class main_method
{
public static void Main()      // main method
{
Animals a;
a = new Cat();
a.aml();
a = new Dog();
a.aml();
Console.ReadLine();
}
}

Explanation: In the above example, there are an abstract class Animals with abstract method aml(). Class Animals are inherent in child class ‘Cat’ and one another child class ‘Dog’. In the main method, ‘a’ is the object of a class Animals that cannot be instantiated. Abstract classes are used at the time of inheritance which contains constructors and destructors. Override keyword is a must before the abstract method which is used to inherit child class.

Output:

C# class - 1

Example #2

Sealed Class

Code:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
public class Animal
{
public virtual void sleep()
{
Console.WriteLine("Animals are sleeping");
}
public virtual void eat()
{
Console.WriteLine("Animals are eating");
}
}
public class Cat : Animal    // inheritance
{
public override void sleep()
{
Console.WriteLine("Cat is sleeping");
}
public sealed override void eat()  // sealed method
{
Console.WriteLine("Cat is eating");
}
}
public class Dog : Cat  // inheritance
{
public override void Sleep()
{
Console.WriteLine("Sleeping");
}
public override void eat()
{
Console.WriteLine("Eating");
}
}
public class TestSealed
{
public static void Main()    // main method
{
Dog d = new Dog();
d.eat();
d.fly();
}
}

Popular Course in this category
C# Training Program (6 Courses, 17 Projects)6 Online Courses | 17 Hands-on Project | 89+ Hours | Verifiable Certificate of Completion | Lifetime Access
4.6 (8,847 ratings)
Course Price

View Course

Related Courses
ASP.NET Training (8 Courses, 19 Projects).NET Training Program (4 Courses, 19 Projects)

Explanation: In the above example, there is a sealed method that is used to prevent the other classes to be inherited. So in this case when we are trying to inherit the sealed class, compiler read the sealed keyword and will give an error. Hence it cannot be overridden.

Output:

C# class - 2

Example #3

Static Class

Code:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
class Office
{
public static string Name;          // static fields
public static string Location;
static Office()        // constructor
{
Name = "Microsoft";
Location = "Hyderabad";
}
}
class Program
{
static void Main(string[] args)
{
Console.WriteLine(Office.Name);
Console.WriteLine(Office.Location);
Console.Read();
}
}

Explanation: In the above example, there is a static class and a static keyword is used for static classes which make the class non-instantiable. It consists of a static member’s name and location. In the main method, we are accessing the static data members of the class office. An object for static classes cannot be created. Static classes cannot be inherited from any other class.

Output:

C# class - 3

Example #4

Partial Class

Code:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
// partial class1.cs
public partial class Class1
{
private string EmpName;
private int EmpId;
public Class1(string a, int t)
{
this.EmpName = a;
this.EmpId = t;
}
}
// partial class2.cs
public partial class Class1
{
public void Display()
{
Console.WriteLine("Employee name is : " + EmpName);
Console.WriteLine("Employee Id is : " + EmpId);
}
}
public class Class
{
private string EmpName;
private int EmpId;
public Class(string a, int t)
{
this.EmpName = a;
this.EmpId = t;
}
public void Display()
{
Console.WriteLine("Employees name is : " + EmpName);
Console.WriteLine("Employee Id is : " + EmpId);
}
}

Explanation: In the above example, the partial class is implemented. It can be used when we have a long class. So to ease the code we can define multiple files. Partial is the keyword used with these types of classes. So it can be split into multiple files which consist of a method with the use of the partial keyword. In this partial class1.cs and partial class2.cs are combined by the compiler into a single file.

Output:

Partial

Notes: Access specifiers helps to access the member as well as the class itself.

Conclusion

For accessing any class members, we should use the dot operator. The dot operator helps to link the name of the object to the name of the member. We can define methods, constructors, destructors inside the class.

Recommended Articles

This is a guide to C# Class. Here we discuss Syntax to C# Class, with four different examples to implement with proper codes and outputs. You can also go through our other related articles to learn more –

  1. C# Literals
  2. TextWriter in C#
  3. DateTime in C#
  4. C# Out Parameter

All in One Software Development Bundle (600+ Courses, 50+ projects)

600+ Online Courses

50+ projects

3000+ Hours

Verifiable Certificates

Lifetime Access

Learn More

0 Shares
Share
Tweet
Share
Primary Sidebar
C sharp Tutorial
  • Advanced
    • Inheritance in C#
    • Exception Handling in C#
    • Types of Exception in C#
    • C# FileNotFoundException
    • C# NullReferenceException
    • C# OutOfMemoryException
    • C# StackOverflowException
    • Custom Exception in C#
    • What is Multithreading in C#
    • C# finally
    • C# System.IO
    • What is StringBuilder in C#
    • DataReader C#
    • BinaryWriter in C#
    • C# BinaryReader
    • TextWriter in C#
    • TextReader in C#
    • C# StringReader
    • C# StringWriter
    • C# StreamReader
    • C# StreamWriter
    • C# FileInfo
    • What is Design Pattern in C#?
    • Multithreading in C#
    • Sorting in C#
    • Bubble Sort in C#
    • C# SortedList
    • C# SortedSet
    • C# SortedDictionary
    • Abstract Class in C#
    • Access Modifiers in C#
    • C# Generics
    • Deserialization in C#
    • C# Thread
    • C# Thread Join
    • C# Thread Sleep
    • C# Thread Synchronization
    • C# Class
    • Sealed in C#
    • Sealed Class in C#
    • Polymorphism in C#
    • C# Call By Reference
    • Virtual Keyword in C# 
    • Yield Keyword in C#
    • Regular Expression in C#
    • C# Lambda Expression
    • C# Predicate
    • Convert Object to JSON C#
    • Checkbox in C#
    • C# MessageBox
    • Collections in C#
    • List in C#
    • C# LinkedList
    • Listbox in C#
    • Protected in C#
    • C# EventHandler
    • Private in C#
    • this Keyword in C#
    • Static Keyword in C#
    • C# Out Parameter
    • Assert in C#
    • C# Delegates
    • C# Interface
    • Generics in C#
    • Timer in C#
    • C# Serialization
    • Metadata in C#
    • C# Stack
    • C# Using Static
    • Queue in C#
    • C# File.Exists
    • C# Tuples
    • C# Create JSON Object
    • Partial in C#
    • C# readonly
    • C# Action Delegate
    • C# Await Async
    • C# Dictionary
    • IEnumerable C#
    • C# Data Grid View
    • C# Dynamic
    • Web Services in C#
    • C# Pattern Matching
    • C# Extension Methods
    • C# XmlSerializer
  • Basic
    • Uses Of C#
    • C# Versions
    • C# Data Types
    • Variables in C#
    • Namespaces in C#
    • C# Compilers
    • C# Keywords
    • Iterators in C#
    • Objects in C#
    • C# Object Dispose
    • C# object to XML
    • C# check object type
    • C# Object Serialization
    • Pointers in C#
    • C# Literals
    • C# Commands
    • C# Custom Attribute
    • Type Casting in C#
    • String vs String C#
    • C# Struct vs Class
  • Operators
    • Logical Operators in C#
    • Conditional Operators in C#
    • Bitwise Operators in C#
    • C# OR Operator
    • C# Ternary Operators
    • Operator Precedence in C#
  • Control Statement
    • C# if Statement
    • Else If in C#
    • Continue in C#
    • Break in C#
    • Switch Statement in C#
    • Goto Statement in C#
  • Loops
    • C# For Loop
    • C# While Loop
    • C# do-while loop
    • C# foreach Loop
  • Arrays
    • Arrays in C#
    • 2D Arrays in C#
    • C# Jagged Arrays
    • String Array in C#
    • C# Multidimensional Arrays
  • Constructor and Destructor
    • Constructor in C#
    • Copy Constructor in C#
    • Static Constructor in C#
    • Destructor in C#
  • overloading and overrideing
    • Overloading and Overriding in C#
    • Overloading in C#
    • Overriding in C#
    • Method Overloading in C#
    • Method Overriding in C#
    • Operator Overloading in C#
  • Functions
    • C# Functions
    • C# String Functions
    • Math Functions in C#
    • Recursive Function in C#
    • C# Anonymous Functions
    • C# Local Functions
    • Enum in C#
    • Trim() in C#
    • clone() in C#
    • C# random
    • C# String Format()
    • C# String Interpolation
    • C# StartsWith()
    • C# String IndexOf()
    • DateTime in C#
    • C# Nullable
    • C# nameof
    • C# checked
    • C# String PadLeft
    • Convert String to Double in C#
    • Convert int to String C#
    • String to Date C#
    • C# intern()
    • C# Stopwatch
    • C# DirectoryInfo
    • C# Compare()
    • C# Base
    • C# SOAP
    • Lock in C#
  • Programs
    • Patterns in C#
    • Swapping in C#
    • Palindrome in C#
    • Factorial in C#
    • Fibonacci Series in C#
    • Random Number Generator in C#
    • Prime Numbers in C#
    • Armstrong Number in C#
    • Reverse String in C#
  • Interview questions
    • C# Interview Questions and Answers
    • C# OOP Interview Questions
    • C# Design Pattern Interview Questions

Related Courses

C# Certification Training

ASP.NET Course

.NET Course

Footer
About Us
  • Blog
  • Who is EDUCBA?
  • Sign Up
  • Corporate Training
  • Certificate from Top Institutions
  • Contact Us
  • Verifiable Certificate
  • Reviews
  • Terms and Conditions
  • Privacy Policy
  •  
Apps
  • iPhone & iPad
  • Android
Resources
  • Free Courses
  • Java Tutorials
  • Python Tutorials
  • All Tutorials
Certification Courses
  • All Courses
  • Software Development Course - All in One Bundle
  • Become a Python Developer
  • Java Course
  • Become a Selenium Automation Tester
  • Become an IoT Developer
  • ASP.NET Course
  • VB.NET Course
  • PHP Course

© 2020 - EDUCBA. ALL RIGHTS RESERVED. THE CERTIFICATION NAMES ARE THE TRADEMARKS OF THEIR RESPECTIVE OWNERS.

EDUCBA Login

Forgot Password?

EDUCBA
Free Software Development Course

Web development, programming languages, Software testing & others

*Please provide your correct email id. Login details for this Free course will be emailed to you
Book Your One Instructor : One Learner Free Class

Let’s Get Started

This website or its third-party tools use cookies, which are necessary to its functioning and required to achieve the purposes illustrated in the cookie policy. By closing this banner, scrolling this page, clicking a link or continuing to browse otherwise, you agree to our Privacy Policy

EDUCBA

*Please provide your correct email id. Login details for this Free course will be emailed to you
EDUCBA
Free Software Development Course

Web development, programming languages, Software testing & others

*Please provide your correct email id. Login details for this Free course will be emailed to you

Special Offer - C# Certification Training Learn More