单选题

下列代码的输出结果为(    &n...

发布于 2022-03-03 11:34:19

下列代码的输出结果为(      )
package main

import (
 "fmt"
)

type A struct{}

func (a A) f() {
 fmt.Println("A.f()")
}
func (a A) g() {
 fmt.Println("A.g()")
}

type B struct {
 A
}

func (b B) f() {
 fmt.Println("B.f()")
}

type I interface {
 f()
}

func printType(i I) {
 fmt.Printf("%T\n", i)
 if a, ok := i.(A) ok {
  a.f()
  a.g()
 }
 if b, ok := i.(B) ok {
  b.f()
  b.g()
 }
}

func main() {
 printType(A{})
 printType(B{})
}

登录后免费查看答案
关注者
0
被浏览
12
知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看