Я знаю о чистых виртуальных классах C++, но Java пошла еще на один шаг и создала концепцию первоклассного (не предназначенного для каламбуров) концепции для наследования с несколькими интерфейсами (не для реализации), interface
. Теперь он является основным основным статически типизированным языком. Придумал ли Java концепцию интерфейса? Или он появился на более старых языках также как концепция первого класса?Разработал ли Java интерфейсы?
ответ
Реферат из статьи Языковая среда Java.
Интерфейс на языке Java - это просто спецификация методов, которые объект объявляет, что он реализует. Интерфейс не включает переменные экземпляра или код реализации - только декларации констант и методов. Концепция интерфейса на языке Java была заимствована из концепции Objective-C .
http://java.sun.com/docs/white/langenv/Object.doc2.html#6185
Чистые виртуальные классы без полей вызывались на интерфейсах C++ еще до Java. Идея интерфейса Java заключалась в том, чтобы удалить неприятное множественное наследование, как это было на C++, но оставить аналогичные возможности.
Я совершенно уверен, что разработчики Java не изобретали концепцию интерфейсов, но популяризировали их.
Насколько я знаю, Objective-C был первым языком для интерфейса. По крайней мере, они были до того, как была изобретена Java.
Я не знаю Objective-C, но по его записи в wikipedia кажется, что его «интерфейс» больше связан с прямым объявлением определенного интерфейса класса (например, заголовочным файлом C++), а не с концепцией интерфейса Java , Пожалуйста, поправьте меня, если я ошибаюсь! –
Конечно, но понятие «интерфейс» называется «протоколом» в Objective-C. –
IDL, используемый CORBA, я считаю, относится к началу 80-х годов.
Да, но IDL не является частью языка, а является спецификацией языкового взаимодействия. Но вы правы, это могло повлиять на концепцию интерфейса Java в некоторой степени. –
@ Jordão IDL не является языком программирования. Это, однако, язык (то есть бит L). –
Я уверен, что IUnknown и IDispatch существовали до Java ... Но это COM, который не является на самом деле язык.
То же самое с CORBA. –
- 1. Java - интерфейсы
- 2. Java-интерфейсы
- 3. Предоставляет ли Java интерфейсы для методов?
- 4. Как Java определяет, являются ли интерфейсы непоследовательными?
- 5. интерфейсы в Java
- 6. Иерархические интерфейсы Java RMI
- 7. Интерфейсы Java - параметрический полиморфизм
- 8. Java - интерфейсы и методы
- 9. Java Интерфейсы и наследование
- 10. Java Embedded Статические интерфейсы
- 11. Java runnable и интерфейсы
- 12. Java Дженерики и интерфейсы
- 13. Java: различные интерфейсы дженериков
- 14. Java-абстракция и интерфейсы
- 15. Java и «общие» интерфейсы
- 16. Интерфейсы в Java 8
- 17. разработал альтернативу strtok
- 18. Java общие интерфейсы
- 19. Generics + Интерфейсы в Java
- 20. Java Интерфейсы начинающих
- 21. Установить интерфейсы в Java
- 22. Java - реализующие интерфейсы
- 23. Java - понимание интерфейсы
- 24. Интерфейсы Java: ошибка компилятора
- 25. Интерфейсы: Спецификация языка Java
- 26. Литейные интерфейсы в java
- 27. Интерфейсы в Java
- 28. Java overriding и интерфейсы
- 29. Java: интерфейсы и шаблоны
- 30. Интерфейсы Spring и Java
Разработали ли дизайнеры Java что-нибудь? AFAIK, они просто объединили кучу идей, которые шли довольно часто до появления языка. – 2010-05-03 14:11:33
@Neil: правда, но так было создано большинство неакадемических языков. –
@ Джойхим Да, я не собирался критиковать. – 2010-05-03 14:14:45