Zrób metody java widoczne tylko dla określonych klas

Mam klasę menedżera odpowiedzialną za zarządzanie obiektami określonego rodzaju. Aby to zrobić, musi manipulować tymi obiektami, ale te obiekty nie mają żadnego związku z menedżerem, więc zaprojektuj technicznie, są one w osobnych pakietach „project.managers” i „project.objects”. Ważną rzeczą jest to, że przedmiotowe obiekty powinny być manipulowane tylko przez menedżerów i nigdzie indziej, ale muszą być dostępne dla każdej innej klasy w projekcie.

Jako taki chciałbym, aby menedżerowie mieli dostęp do manipulowania metodami, ale ograniczają dostęp do każdej innej klasy. Najbardziej oczywistym byłoby przeniesienie klasy menedżera i klasy obiektu do tego samego pakietu i zadeklarowanie ochrony metod manipulacji, ale ponieważ menedżerowie i obiekty są całkowicie oddzielnymi jednostkami, nie pasują do nich filozoficznie.

(Dzieje się tak częściowo dlatego, że chcę, aby moje IDE przestało pokazywać mi metody manipulowania za każdym razem, gdy autouzupełniam kod na przedmiotowych obiektach, więc zawsze muszę iść drogą przez menedżera, aby odpowiednie tabele były poprawnie aktualizowane za każdym razem, gdy zmieniam te obiekty) .

Czy są jakieś pomysły na to lub w każdym razie oczywisty sposób jest najlepszy?

questionAnswers(3)

yourAnswerToTheQuestion