zoukankan      html  css  js  c++  java
  • 面向对象编程思想-抽象

    如何理解抽象:

    我们在前面去定义一个结构体的时候,实际上就是把一类事物的共有的属性(字段)和行为(方法)提取出来,形成一个物理模型(模板)。这种研究问题的方法称为抽象。

    案例演示:

    type Account struct {
      AccountNo string
      Pwd string
      Balance float64
    }

    //方法
    //1.存款
    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 ", account.AccountNo, account.Balance)
    }

    func main() {

      account := Account{
        AccountNo : "gs1111",
        Pwd : "666666",
        Balance : 100.0,
      }
      account.Query("666666")
      account.Deposite(200.0, "666666")
      account.Query("666666")
      account.WithDraw(150.0, "666666")
      account.Query("666666")
    }

  • 相关阅读:
    221. 最大正方形
    9. 回文数
    2. 两数相加
    1. 两数之和
    HDU 1864 最大报销额
    47 java包打成本地maven
    46 数组中的元素进行位置交换
    5 docker安装kibana
    45 vue图片放大预览
    4 docker中安装es
  • 原文地址:https://www.cnblogs.com/green-frog-2019/p/11408224.html
Copyright © 2011-2022 走看看