zoukankan      html  css  js  c++  java
  • 42_接口之间的转换

    //超集可以使用子集里面的方法,而子集不能调用超集里面的方法

    //超集接口变量可以转换为子集接口类型,但是子集接口类型不可以转换为超集接口类型

    代码如下:

    package main
    
    
    import "fmt"
    
    
    type Hummaner interface {
    	sing() //声明一个方法,并没有实现
    }
    type Studenter interface {
    	Hummaner //匿名字段,嵌入字段
    	play()   //声明一个方法,并没有实现
    }
    type Student struct {
    	id   int
    	name string
    }
    
    
    //type Techer struct {
    //	id   int
    //	name string
    //}
    
    
    func (s *Student) sing() {
    	fmt.Println("学生在唱歌!!!")
    }
    func (t *Student) play() {
    	fmt.Println("老师在玩耍!!!")
    }
    func main() {
    	//studenter是超集,hummer是子集
    	var s Studenter = &Student{1, "steven"} //指针接收
    	var h Hummaner = s                      //超集可以转子集
    	h.sing()
    	var h1 Hummaner = &Student{1, "steven"}
    	//var s1 Studenter = h1// cannot use h1 (type Hummaner) as type Studenter in assignment
    	//s1.sing()
    }
    每天的价值就是不停息的前进!!!
  • 相关阅读:
    双循环解决添加列表问题
    贪心算法
    隔板法发红包
    python小兵之时间模块
    开发规范
    python 小兵(12)模块1
    Linux系统
    刷题
    Socket
    栈和队列
  • 原文地址:https://www.cnblogs.com/zhaopp/p/11565515.html
Copyright © 2011-2022 走看看