2011-01-17 3 views
0

Хорошо, у меня есть много вопросов относительно желаемой темы, ну, лучше, чтобы быть коротким здесь.Объектно-ориентированный и объектно-ориентированный язык

1> C# является объектно-ориентированным или объект на основе

2> Java является объектно-ориентированным или объект на основе

согласно моему знание C# является объектно-ориентированным и Java основан объект, если это правда, то, что делает Java ориентированным не объектно-ориентированным.

+0

Мне кажется, что «объектно-ориентированные» и «основанные на объектах» являются синонимами в большинстве контекстов. Возможно, вам понадобится дать определения терминов для уточнения вопроса. –

+0

нет ничего похожего на то, что вы написали, вопрос совершенно правильный –

+0

перед тем, как давать отрицательные очки, я думаю, что у shud есть правильное знание вопроса, а также знание ответа –

ответ

1

Парадигма программирования на основе объектов использует все возможности объектно-ориентированного программирования, за исключением inheritance. Например, JavaScript является объектом, тогда как Java является объектно-ориентированным.

Хотя использование этих двух терминов взаимно исключительно, практически говоря, язык object oriented также является object based, но не наоборот.

1

Оба C# и Java - object-oriented languages.

Как правило, язык считается "object-based", когда ему не хватает поддержки некоторых центральных функций по-настоящему объектно-ориентированного языка, а именно наследования и полиморфизма. Хорошим примером объектно-ориентированного языка является VB 6 (версия pre -.NET). Это был , основанный на объектах, но он не поддерживал ни наследование, ни полиморфизм, что делает невозможным рассматривать его как объектно-ориентированный язык.

+0

, но java не поддерживает перекрытие оператора, которое является частью полиморфизма –

+0

@slash shogdhe: Перегрузка оператора не является свойством ориентации объекта. Это просто имеет смысл. – DarkDust

+1

@slash: Я не вижу, как перегрузка операторов является частью полиморфизма. Это не обязательно является частью объектно-ориентированной парадигмы, и некоторые даже догадываются, что перегрузка является анти-OO. Более того, нет реального определения того, как выглядит «чистый» объектно-ориентированный язык. Зачем задавать вопрос, считаете ли вы, что вы уже знаете ответ? –