**哈哈 好一个君子协议 我们封装起来的一些属性不希望被外部使用(类似c++重点私有) 所以加__ 但实际上依旧能访问到 所以访问不访问 全靠君子协议 **
通过内置函数dir(stu)打印出这个对象里面所有属性
重写__str__ 这个属性 如果直接打印这个对象 默认是调用__str__ 上面是重写后的打印
类对象加括号代表着实例化 上面例子刚好是实例化过程不需要传参数 所以看上去就像类对象直接空括号
JAVA静态语言 Python动态语言 静态语言想要实现多态 必须明确他的继承关系 父类 动态语言 只关心对象的行为 类型什么的不关心
特殊方法基本上都要自己重新实现来满足需求