К вопросам

Встраивание типов

Тест · Вопрос 6 из 6

Тест

Вопрос 6

Какое значение выведет программа? (встраивание методов, 2/2)

Go
package main

import "fmt"

type Inner struct{}
func (Inner) P() int { return 10 }

type Outer struct{ Inner }
func (Outer) P() int { return 20 }

func main() {
	var o Outer
	fmt.Println(o.P())
}
Варианты ответа

Выберите один ответ

Метод селектора сначала ищется у самого типа `Outer`. Его собственный `P` перекрывает поднятый с `Inner`, поэтому вызывается вариант с `20`.