
脚本练习:
2.打印各种类的属性
(1)访问类的公有属性

执行结果:

(2)访问类的私有属性

执行结果:

不建议使用这种方式访问类的私有属性,只是为了测试。
(3)访问对象的公有属性

执行结果:

结论:必须要先调用方法,才能使用方法里面的属性。
(4)访问对象的私有属性

执行结果:

结果:这样访问是不行的,不能再类外面访问对象的私有属性。
(5)访问函数的局部变量

执行结果:

结果:也不能用这种方法访问函数的局部变量。
总结:类的公有属性,可以通过对象访问
类的私有属性,也可以通过对象来访问
对象的公有属性,要先调用方法,才能通过对象来访问。
对象的私有属性,通过对象不能访问
函数的局部变量,在类的外面,通过对象也不能访问。
下面我们通过类来访问这些属性:
(1)访问公有属性

执行脚本:

没问题
(2)通过类访问私有属性:

执行脚本:

不可以访问
(3)通过类访问对象的公有属性

执行脚本:

不能访问。
说明:对象的属性,只能通过对象来访问

执行脚本:

可以执行
补充:对象的属性和类的属性的区别
①脚本中位置不一样
②类的属性是定义在方法外
③对象的属性是对应在方法里
测试这些属性在类的内部使用:
(1)在内部访问类的公有、私有属性

执行结果:

公有、私有属性都可以被访问。
(2)在类内部访问对象的公有属性

执行结果

(3)在类内部访问对象的私有属性

执行结果:

也可以访问对象的私有属性。
(4)在方法内调用对象的私有属性和函数局部变量

执行结果:

可以访问到
var5可以再fun1()里面被访问,不能再fun2()中被访问,除非把var5定义为全局变量,全局变量是在类的外部定义的。
如下图所示:

(5)访问类的内置属性

执行结果:

2.类的方法总结
(1)定义方法

(2)调用一下,查看这些方法可以在什么地方被调用
①调用公有方法L:

执行脚本:

②调用私有方法:

执行脚本:

如图,不能被调用,私有方法只能在类的内部被调用。
③调用类方法:

在类方法上面加上“装饰器”,有了装饰器,表示这个方法可以被类来调用;
调用方法如下:

执行脚本:

可以执行,要加上装饰器才可以被类调用。
④调用静态方法
静态方法也是通过类来调用的,静态调用不能通过self,所以改成类来调用name,如下:

调用方法:

执行结果:

原文地址:http://blog.51cto.com/286577399/2047307