java类方法不可见_使java方法仅对特定类可见
我有一個經理類負責管理某種對象.要做到這一點,它需要操縱這些對象,但這些對象與管理器無關,所以從技術上講,它們位于單獨的包“project.managers”和“project.objects”中.重要的是,有問題的對象只能由管理者操縱,而不是其他任何地方,但需要項目中的其他每個類都可以訪問.
因此,我希望管理員可以訪問操作方法,但限制對其他所有類的訪問.最明顯的一種方法是將管理器類和對象類移動到同一個包中并聲明受保護的操作方法,但由于管理器和對象是完全獨立的實體,因此它們不符合哲學.
(這部分是因為我希望我的IDE在我自動完成有問題的對象上的代碼時停止向我顯示操作方法所以我總是必須通過管理器的路徑,以便每當我更改有問題的對象時相應的表都會正確更新) .
有什么想法,或者在任何情況下最明顯的方式是最好的嗎?
解決方法:
為什么沒有調用接口
ManagerFunctions
和另一個叫
ClientFunctions
您管理的對象將實現這兩??個.
創(chuàng)建托管對象時,可以傳遞它們,但僅作為對ClientFunctions的引用.但是,管理器對象將它們稱為ManagerFunctions,因此可以訪問它們的“托管”功能.適當的鑄造將簡單地暴露適當的方法.
您的IDE將根據引用這些對象的方式自動顯示相應的方法.
標簽:java,package,theory,access-specifier
來源: https://codeday.me/bug/20190625/1287355.html
總結
以上是生活随笔為你收集整理的java类方法不可见_使java方法仅对特定类可见的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 饥荒福特羊在哪里
- 下一篇: kafkatool 配置_kafka t