面向对象 - 方法与变量访问

Vla*_*ir 1 oop methods class object

我听说使用方法访问值比简单地调用变量本身的值要好得多.例如,使用银行帐户类,最好使用.

myAccount.getBalance()
Run Code Online (Sandbox Code Playgroud)

而不是直接使用直接访问变量

myAccount.balance
Run Code Online (Sandbox Code Playgroud)

这种方法的目的是什么,因为第二种方法似乎更直接,需要更少的字符才能完成.

duf*_*ymo 5

如果您重视封装和信息隐藏的想法,那么该方法会更好.

更直接?也许.但间接正是这种方法通常更好的原因.如果getBalance()真的意味着利用多个外部服务的复杂计算会怎么样?用户不必担心这种复杂性; 他们所知道的只是他们称之为方法.它隐藏在对象的界面后面.

面向对象编程带来了四个想法:

  1. 抽象数据类型
  2. 封装和信息隐藏
  3. 遗产
  4. 多态性

不要那么快就轻易抛弃基本面.

我会把它还给你:通过追求价值你能节省多少钱?打字?击键很便宜.性能?请.没有充分理由在变量之后立即采取行动.