TOC

This article has been localized into Georgian by the community.

კლასები:

შესავალი C#-ის კლასებში

პროგრამირების მრავალ სასწავლო კურსში, კლასების შესახებ ინფორმაცია ბოლოსკენ იქნება შემონახული. თუმცა , იქიდან გამომდინარე, რომ C#-ში ყველაფერი ობიექტზე ორიენტირებულ პროგრამირებასა და კლასებს ეხება, ახლა ჩვენ კლასების შესახებ ყველაზე საბაზისო და მნიშნველოვან ფაქტორებს შევეხებით.

უპირველეს ყოვლისა, კლასი ერთმანეთთან დაკავშირებული მეთოდებისა და ცვლადების ერთობლიობაა. კლასი აღწერს ამ საგნებს, და უმრავლეს შემთხვევაში თქვენ შეგიძლიათ ამ კლასის ეგზემპლარის შექმნა რასაც ობიექტს ვუწოდებთ ხოლმე. ამ ობეიქტზე იყენებთ მასში განსაზღვრულ მეთოდებსა და ცვლადებს. რა თქმა უნდა შეგიძლიათ თქვენი კლასის იმდენი ობიექტი შექმნათ რამდენიც გსურთ. კლასები და ზოგადად ობიექტზე ორიენტირებული პროგრამირება საკმაოდ დიდი თემაა. ზოგიერთ საკითხს ამ თავში დავფარავთ, ზოგიერთს კი მომდევნო თავებში, მაგრამ არა ყველაფერს.

კლასი პირველად Hello world-ის თავში ვნახეთ და გამოვიყენეთ, რადგან C#-ში ყველაფერი კლასებზეა აგებული. მოდით განვავრცოთ ჩვენი Hello world-ის მაგალითი და საკუთარი კლასი შევქმნათ.

using System;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            Car car;

            car = new Car("Red");
            Console.WriteLine(car.Describe());

            car = new Car("Green");
            Console.WriteLine(car.Describe());

            Console.ReadLine();

        }
    }

    class Car
    {
        private string color;

        public Car(string color)
        {
            this.color = color;
        }

        public string Describe()
        {
            return "This car is " + Color;
        }

        public string Color
        {
            get { return color; }
            set { color = value; }
        }
    }
}

კარგით, აქ ბევრი ახალი რამაა, მაგრამ თითქმის ყველაფერი იმაზეა დაფუძნებული რაც აქამდე გამოვიყენეთ. როგორც ხედავთ, ახალი კლასი განვსაზღვრეთ, რომელსაც Car დავარქვით. სიმარტივისთვის ეს კლასი იმავე ფაილშია განსაზღვრული რომელშიც მთავარი ფუნქცია, თუმცა, როგორც წესი თითოეული კლასი საკუთარ ფაილში განისაზღვრება. ეს კლასი ერთ ცვლადს განსაზღვრავს რომელსაც color ჰქვია და ჩვენი მანქანის ფერს აღნიშნავს. ამ ცვლადს როგორც private-ს ისე ვაცხადებთ, რაც კარგია, რადგან ცვლადებზე კლასის გარედან წვდომა თვისებების (Property) საშუალებით უნდა ხდებოდეს. Color თვისება (Property) კლასის ბოლოშია განსაზღვრული და color ცვლადზე წვდომის საშუალებას გვაძლევს.

გარდა ამისა, ჩვენი Car კლასი კონსტრუქტორსაც განსაზღვრავს. ის იღებს პარამერტს რომელიც მანქანის ობიექტის ფერის ინიციალიზებას (მინიჭებას) ახდენს. იქიდან გამოდინარე რომ მხოლოდ ერთი კონსტრუქტორი გვაქვს, მანქანის ობიექტის შექმნის დროს მხოლოდ ფერის ინიციალიზება შეიძლება. Describe() მეთოდი ლამაზად დაწერილ მესიჯს გვაძლევს ჩვენი მანქანის ინფორმაციის შესახებ. ის უბრალოდ ტექსტს აბრუნებს იმ ინფორმაციის საფუძველზე რაც მივაწოდეთ.

ახლა, ჩვენი აპლიკაციის მთავარ ნაწილში, ვაცხადებთ Car ტიპის ცვლადს. ამის შემდეგ ვქმნით ახალ ობიექტს რომელსაც პარამეტრად "Red"-ს ვატანთ. კლასში დაწერილი კოდიდან გამომდინარე, ეს ნიშნავს რომ მანქანის ფერს "Red" მიენიჭება. ამის დასადასტურებლად, გამოვიძახოთ Describe() მეთოდი. იმისათვის რომ ვნახოთ რამდენად მარტივად შეგვიძლია კლასის ობიექტების შექმნა, ეს პროცესი კიდევ რამდენჯერმე გავიმეოროთ, ოღონდ ახლა უკვე სხვა ფერი გადავცეთ. ახლახანს ჩვენ ჩვენი პირველი კლასი შევქმენით და გამოვიყენეთ.

მომავალ თავებში დეტალურად ავხსნით ისეთ ცნებებს როგორებიცაა: თვისებები (properties), კონსტრუქტორები და ხილვადობა.


This article has been fully translated into the following languages: Is your preferred language not on the list? Click here to help us translate this article into your language!