4. 面向对象中引用概念的强调
- 在昨天的第一个面向对象程序中,在python中使用 类 创建对象后,tom 变量中仍然记录的是 对象 在 内存 中的地址
- 也就是 tom 变量引用了新建的 猫 对象
- 使用print输出对象变量,默认情况下是可以输出这个变量引用的对象是由 哪一个类 创建的对象,以及在内存中的地址
在计算机中,通常使用十六进制表示内存地址
- %d 可以以十进制输出数字
- %x 可以以十六进制输出数字
案例进阶——使用Cat类再创建一个对象(lazy_cat),tom和lazy_cat是同一个对象吗?
类只有一个,但是可以使用类创建不同的对象,
扩展:lazy_cat2 = lazy_cat
03. 方法中的self参数
案例改造——使用self在方法内部输出每一只猫的名字
由哪一个对象调用的方法,方法内的 self 就是哪一个对象的引用
- 在类封装的方法内部,self 就表示当前调用方法的对象自己
- 调用方法时,程序员不需要传递self参数
- 在方法内部可以通过 self. 访问对象的属性,也可以通过 self. 调用其他的对象方法