2011-gre-cs-practice-book.pdf/Q52 — различия между версиями

Материал из DISCOPAL
Перейти к: навигация, поиск
(Объяснение)
(Объяснение)
Строка 19: Строка 19:
  
 
{{question-ok|}}
 
{{question-ok|}}
{{reserve-task|[[Участник:Nikitashapovalov|Nikitashapovalov]] 20:36, 8 января 2025 (UTC)}}
+
 
 +
{{checkme|[[Участник:Nikitashapovalov|Nikitashapovalov]] 01:11, 9 января 2025 (UTC)}}

Версия 01:11, 9 января 2025

Вопрос: Q52-08c765

Принцип подстановки подтипов описывает, когда один тип может быть заменён другим. Какое из следующих утверждений является верным?

Ответы

  • Правильный вариант: (A) Экземпляр подтипа может использоваться в любом выражении, где можно использовать экземпляр супертипа, потому что подтип должен поддерживать супернабор операций, которые поддерживает супертип.
  • (B) Экземпляр подтипа может использоваться в любом выражении, где можно использовать экземпляр супертипа, потому что подтип должен поддерживать поднабор операций, которые поддерживает супертип.
  • (C) Экземпляр супертипа может использоваться в любом выражении, где можно использовать экземпляр подтипа, потому что подтип должен поддерживать супернабор операций, которые поддерживает супертип.
  • (D) Экземпляр супертипа может использоваться в любом выражении, где можно использовать экземпляр подтипа, потому что подтип должен поддерживать поднабор операций, которые поддерживает супертип.
  • (E) Экземпляры подтипов и супертипов могут использоваться взаимозаменяемо.

Объяснение

Исходники — вопрос 52 на 39 странице книги «2011-gre-cs-practice-book.pdf»

Фактически вопрос касается приниципа подстановки Лисков [1].

Подтип как минимум должен поддерживать все операции супертипа, чтобы его можно было безопасно подставлять на место супертипа, поэтому правильный вариант - (A).Check-me-animated.gif Решено: Nikitashapovalov 01:11, 9 января 2025 (UTC)