面向对象编程思想-抽象 末蓝、 2021-07-24 13:58 490阅读 0赞 # 一 抽象的介绍 # 我们在定义一个结构体时,实际上就是把一类事物的共有的属性(字段)和行为( 方法)提取出来,形成一个 物理模型(结构体)。这种研究问题的方法称为抽象。 ![watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2NoZW5ncWl1bWluZw_size_16_color_FFFFFF_t_70][] # 二 代码 # package main import ( "fmt" ) // 定义一个结构体 Account type Account struct { AccountNo string Pwd string Balance float64 } // 方法 // 存款 func (account *Account) Deposite(money float64, pwd string) { // 看下输入的密码是否正确 if pwd != account.Pwd { fmt.Println("你输入的密码不正确") return } // 看看存款金额是否正确 if money <= 0 { fmt.Println("你输入的金额不正确") return } account.Balance += money fmt.Println("==================存款成功===================") } // 取款 func (account *Account) WithDraw(money float64, pwd string) { // 看下输入的密码是否正确 if pwd != account.Pwd { fmt.Println("你输入的密码不正确") return } // 看看取款金额是否正确 if money <= 0 || money > account.Balance { fmt.Println("你输入的金额不正确") return } account.Balance -= money fmt.Println("==================取款成功===================") } // 查询余额 func (account *Account) Query(pwd string) { // 看下输入的密码是否正确 if pwd != account.Pwd { fmt.Println("你输入的密码不正确") return } fmt.Printf("你的账号为=%v 余额=%v \n", account.AccountNo, account.Balance) } func main() { account := Account{ AccountNo: "gs1111111", Pwd: "666666", Balance: 100.0, } account.Query("666666") account.Deposite(200.0, "666666") account.Query("666666") account.WithDraw(150.0, "666666") account.Query("666666") } # 三 测试 # 你的账号为=gs1111111 余额=100 ==================存款成功=================== 你的账号为=gs1111111 余额=300 ==================取款成功=================== 你的账号为=gs1111111 余额=150 [watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2NoZW5ncWl1bWluZw_size_16_color_FFFFFF_t_70]: /images/20210724/5c105647238441a18bfdfdb54ba54ac4.png
还没有评论,来说两句吧...