go 结构体实现 被继承的父结构实现判断继承子结构体的类型,并且分别调用子结构体的方法

type eml struct{
    basicsalary float64
}
type emll interface{
   showSalaryI()
}
type teacherEE struct{
    emloyee
    remuneration float64
}
func ( t teacherE)  showSalaryEE(day float64){
    fmt.Printf("我是一名教师,我的薪水是:%f\n",t.basicsalary + t.remuneration * day)
}
func ( t teacherE)  showSalaryI(){
    fmt.Printf("我是一名教师,我的薪水是:%f\n",t.basicsalary)
}

type scientistS struct{
    emloyee  
}
func (s scientist)  showSalarySS(yearawards float64){
    fmt.Printf("我是一名科学家,我的薪水是:%f \n",s.basicsalary + yearawards)
}
func (s scientist)  showSalaryI(){
    fmt.Printf("我是一名科学家,我的薪水是:%f \n",s.basicsalary)
}

//实现由父类判断子类的类型,并且调用子类的方法
func (e eml)showSalaryE()  {

}

如上面问题,我想实现 eml 判断出scientistS teacherEE,并分别调用showSalaryEE和showSalarySS方法?请问能否实现?如何实现?

共 1 个回复


paavo

I don’t know what you’re writing, the context doesn’t fit at all

# 0