آموزش کار با کلاس Abstract در سی شارپ

کلاس Abstract چیست؟ این نوع سوال ها معمولا در مصاحبه پرسیده می شود، به همین دلیل ما تصمیم گرفتیم که با نوشتن مقالاتی از این دست به جویندگان کار و کسانی که می خواهند درباره کلاس Abstract بیشتر بدانند کمک کنیم. بنابراین مفاهیم را به صورت کاملا ساده و ابتدایی بیان می کنیم.

کلاس Abstract

اگر کلاسی برای فراهم کردن فیلدها و اعضای مشترک تمام زیرکلاس ها ایجاد شود، به این نوع کلاس Abstract می گوییم.

نحوه نوشتن کلاس Abstract

این کلاس در سی شارپ با استفاده از کلمه کلیدی abstract ایجاد می شود.

مثال:

abstract public class Pen
{ 
} 

گاهی اوقات شرایطی پیش می آید که امکان تعریف یک متد در کلاس Base وجود ندارد و به جای آن همه کلاس هایی که از کلاس Base ارث بری کرده اند باید این متد را override نمایند. در این شرایط، کلاس ها و متدهای Abstract استفاده می شوند.

متدهای Abstract هیچ پیاده سازی ندارند، بنابراین تعریف این متدها به جایی اینکه مانند بلاک متدهای دیگر بدنه داشته باشد، با یک سمی کالن بسته می شود. کلاس های مشتق شده از کلاس Abstract باید تمام متدهای Abstract را پیاده سازی کنند. زمانی که یک کلاس Abstract یک متد Virtual را از کلاس Base ارث بری می کند، کلاس Abstract می تواند متد Virtual را با یک متد abstract، override کند.

برخی از نکات کلیدی درباره کلاس های abstract به صورت زیر می باشد:

هر کلاسی تنها از یک کلاس abstract ارث بری می کند.

اعضای یک کلاس abstract می توانند هر نوع access modifier (مجوز دسترسی) داشته باشند.

متدهای این کلاس می توانند پیاده سازی داشته باشند یا نداشته باشند.

به عنوان نوعی از کلاس نمی توان از آن شی ساخت، اما کلاس های دیگر می توانند از آن ارث بری کنند.

کلاس های Abstract امکان تعریف فیلدها و ثابت ها را می دهند.

حال اجازه دهید این کلاس را با یک مثال بررسی کنیم. مراحل زیر را برای ایجاد یک console application دنبال می کنیم.

ویژوال استودیو را از منوی استارت باز می کنیم.

از منوی File گزینه New و سپس Project را انتخاب کرده و از قسمت Visual C# گزینه Windows و سپس Console application را انتخاب می کنیم.

پس از آن نام مناسبی مانند “abstract class” یا هر نام دیگری انتخاب کرده و محل ذخیره سازی پروژه را مشخص می کنیم و روی دکمه Ok کلیک می کنیم.

فضاهای نام زیر را در بالای فایل کلاس program.cs اضافه می کنیم:

using System;

 و همچنین از کد زیر در این فایل استفاده می کنیم:

namespace Abstract
{
    abstract class ShapesClass
    {
        abstract public int Area();
    }
    class Square : ShapesClass
    {
        int side = 0;

        public Square(int n)
        {
            side = n;
        }

        public override int Area()
        {
            return side * side; 
        }

        static void Main()
        {
            Square sq = new Square(100);
            Console.WriteLine("Area Of the Square is = {0} ", sq.Area());

            Console.WriteLine();
        }
    }
}

حال برنامه را اجرا می کنیم، خروجی زیر نمایش داده خواهد شد:

خروجی برنامه
خروجی برنامه

دانلود فایل آموزش
پسورد : csharpoop.com

آموزش کار با کلاس Abstract در سی شارپ
۵ (۱۰۰%) ۱ رای

(434 نوشته)

C# Programmer , Web Design And Developer , MVC , ASP.NET

فکر شما چیست؟

آدرس ایمیل شما منتشر نخواهد شد. بخشهای موردنیاز علامتگذاری شدهاند *

حاصل جمع اعداد را وارد کنید : *