|
Java. объектно-ориентированное программирование с интерфейсамиРезультат выполнения тестовой программы: xx=5.3 n1=21 n2=37.6 n3=3.4 (n1+n2)*n3=174 (n2+n1)*n3=199.24 n1*(n2+n3)=861 n3*(n1+n2)=197.2 Обратите внимание: реализация передается через объект. Класс нужен для порождения объекта, несущего реализацию. Но не обязательно, как увидим позднее. Интересно отметить, что результат операции над INumber зависит от последовательности использования переменных. Эффект возникает потому, что в спецификации типа мы опустили важные для чисел свойства: точность и диапазон допустимых значений. В результате они неявно берутся из базового типа, использованного при реализации. В данном случае достаточно добавить метод setFormat(maxValue, minValue, decimal). 2. Реализация типа - Нужно ли знать формулу аспирина, чтобы вылечить головную боль? - Нет! Достаточно иметь деньги в кармане. В предыдущем примере мы видели, что реализация передается через объект. Следовательно, в объекте упакована вся необходимая информация по реализации интерфейса. Если поведение определяется интерфейсом, а реализация упакована в объекте, то зачем нужен класс? - Классы нужны для наследования реализации и повторного использования кода. Если повторное использование не требуется, то и класс не нужен. В следующем примере есть только один класс - для запуска приложения. Собственно логика приложения реализована без использования классов! Продолжение статьи: ч.1 Продолжение статьи: ч.2 Продолжение статьи: ч.3 Продолжение статьи: ч.4 Продолжение статьи: ч.5 Продолжение статьи: ч.6 Продолжение статьи: ч.7 Продолжение статьи: ч.8 Продолжение статьи: ч.9 Другие статьи по теме: - Java: управление ресурсами- революция java - практическое введение в программирование на javascript - возможности языка java - учим java. этап первый: подготовительный |
|
2006-2024 © SMTI.RU Главная страница | Связаться с нами |