Объектно-ориентированные отношения - PullRequest
4 голосов
/ 17 августа 2010

Меня попросили описать отношения между транспортным средством, автомобилем, Toyota в терминах объектно-ориентированного программирования (скажем, в среде php).Я был в тупике.Может ли кто-нибудь помочь мне об этом?Спасибо ...

Ответы [ 15 ]

1 голос
/ 17 августа 2010

В объектно-ориентированном термине Автомобиль будет базовым классом, автомобиль будет подклассом транспортного средства

, а Тойота будет торговой маркой в ​​качестве атрибута.

1 голос
/ 17 августа 2010

Вы можете использовать разные подходы.

  1. Car является подклассом Vehicle. Toyota является подклассом Car.

  2. Car является подклассом Vehicle. Car имеет свойство под названием make. Вы создаете экземпляр Car и устанавливаете для его make значение «Toyota».

Есть и другие способы сделать это, но эти два наиболее очевидных, которые приходят на ум, соответствуют концепции ООП.

Ключ в том, чтобы спросить себя, какой там самый общий термин? Это транспортное средство. Вы можете иметь много видов транспортных средств, таких как грузовики, внедорожники, велосипеды, суда на воздушной подушке и автомобили. Итак, в ООП ваш более конкретный класс наследует от более общего класса.

1 голос
/ 17 августа 2010

Автомобиль - это Автомобиль, Тойота - Автомобиль.

Таким образом, Toyota может быть подклассом автомобиля, а автомобиль - подклассом автомобиля.

class Vehicle {

}

class Car extends Vehicle {

}

class Toyota extends Car {

}

Например, автомобиль может иметь один элемент var для указания количества колес и функцию для включения двигателя (не все автомобили имеют двигатель). В то время как у Тойоты могут быть те же переменные, что и у Автомобиля, плюс строка, содержащая название модели и метод запроса гарантии на педали; -)

1 голос
/ 17 августа 2010

Автомобиль класса. Автомобиль является подклассом автомобилей. Toyota может быть (довольно общим) экземпляром класса Car или подклассом, добавляющим специфическую для Toyota функциональность.

1 голос
/ 17 августа 2010

Тойота это машина. Автомобиль - это Автомобиль. Таким образом, класс Toyota будет наследоваться от автомобиля, который, в свою очередь, наследуется от автомобиля.

...