ინკაფსულაცია

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

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

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

0Shares