|
|
|
Спрятать public методы
|
|||
|---|---|---|---|
|
#18+
Подскажите пожалуйста, как можно спрятать public методы в Java. То есть такая обычная ситуация - есть класс, у него есть public методы, которые входят в public API. И есть методы, которые не должны быть видны кастомеру, но при этом они должны быть public, потому что вызываются из других пакетов. Как можно решить такую ситуацию, чтобы эти методы могли вызываться из других классов, но не были видны в API, то есть клиент не мог бы их вызвать из своего кода? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2015, 17:58 |
|
||
|
Спрятать public методы
|
|||
|---|---|---|---|
|
#18+
Для клиента можно создать отдельный удобный фасад, только с доступными методами. А остальные классы не публиковать. Но, в целом, либо проблема надумана (методы не нужно запрещать), либо какой-то косяк в дизайне (методам не место в данном классе). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2015, 18:08 |
|
||
|
Спрятать public методы
|
|||
|---|---|---|---|
|
#18+
А фасад как реализовать? Типа декоратора? Проблема продиктована тем, что в Java классы должны себя вести точно так же, как в C#. Но в C# есть internal методы, а в Java нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2015, 18:25 |
|
||
|
|

start [/forum/topic.php?fid=59&fpage=135&tid=2125590]: |
0ms |
get settings: |
9ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
62ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
35ms |
get tp. blocked users: |
1ms |
| others: | 246ms |
| total: | 386ms |

| 0 / 0 |
