უნდა იყოს კონსტრუქტორები საჯარო ჯავა?

Სარჩევი:

უნდა იყოს კონსტრუქტორები საჯარო ჯავა?
უნდა იყოს კონსტრუქტორები საჯარო ჯავა?
Anonim

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

შეიძლება კონსტრუქტორები იყოს კერძო ჯავაში?

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

ნაგულისხმევი კონსტრუქტორები პირადია თუ საჯარო?

C++-ში კონსტრუქტორი ავტომატურად გამოიძახება კლასის ობიექტის შექმნისას. ნაგულისხმევად, კონსტრუქტორები განისაზღვრება კლასისსაჯარო განყოფილებაში.

რატომ ვაცხადებთ ზოგადად კონსტრუქტორს Java-ში საჯარო წევრად?

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

როგორ გავასაჯაროო ჩემი კონსტრუქტორი?

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

გირჩევთ: