Это использование слова «абстрактный» отличается от более распространенного использования в Java (abstract
, что означает, что метод или некоторые методы остаются нереализованными).
В данном случае аннотация предназначена для более широко понятых (за пределами Java) случаев, которые скрывают детали. Существует хорошая цитата на the Wikipedia page about abstraction:
Суть абстракций сохранения информации, которая имеет отношение в данном контексте, и забывая о том, что информация не имеет отношения в этом контексте.
- Джон В. Гуттаг
В некотором смысле, все в Java есть абстракция, и поэтому использование слова «абстрактном» здесь, пожалуй, излишне. Но тогда все также является «представлением»; так что слово, возможно, тоже не нужно.
(Также важно заметить, что это определение абстракции не означает abstract
: ваша абстракция может иметь конкретную реализацию).
Я думаю, что есть несколько моментов, которые автор пытается передать, что вещи, которые вы, возможно, захотите, скрыты.: класс предназначен для того, чтобы вы могли делать «общие вещи», которые вы хотите сделать файл; но вы, возможно, не сможете получить доступ к требуемому вами ресурсу, и вы знаете, что он доступен в вашей ОС. Это просто выбор дизайна для использования языка, предназначенного для работы на всех платформах.
Я голосую, чтобы закрыть этот вопрос как не по теме, потому что речь идет о семантике, а не о программировании. – Kayaman
но это место для java или? –
См. Http://docs.oracle.com/javase/tutorial/java/IandI/abstract.html для быстрого урока по абстрактным классам. –