读书人

要使用对象里的方法是不是一定要实例

发布时间: 2012-02-15 12:09:44 作者: rapoo

要使用对象里的方法,是不是一定要实例化对象才能使用??
要使用对象里的方法,是不是一定要实例化对象才能使用??


好像是不一定的,请问那些对象要实例化才能用,哪些不用实例化就能用的??

[解决办法]
classmethod不需要实例化就能使用
其他的方法需要实例化
[解决办法]
方法分类方法与实例方法

类方法通过类名就可以引用也可以用实例引用

实例方法必须通过实例引用

楼猪最好是弄清楚这些东西
[解决办法]

你看的是什么Python书啊?应该仔细看下有关面向对象的部分,学习一些基本思想。

对象就一组数据,拥有操作在数据上的方法。一个实例就是一个对象。类是对象的类型。

比如str是类,是所有的字符串对象的类型。 "abcd "是str类的一个对象。

实例方法必须操作在(类的)一个对象上,类方法则没有实例可操作。

"abcd ".strip()是实例方法,strip()操作在s上。

str.__class__是一个类属性,不需要对象,通过类就可以使用。类方法也一样,不需要对象,不过比较少用,一时找不到例子。

len( "abcd ")是一般方法,虽然操作在 "abcd "数据上,但是没有绑定在其上,需要显示在方法参数中指定。

所以,绑定并操作了一组数据的就是实例方法。一般通过实例名+.来调用的都是实例方法。

读书人网 >perl python

热点推荐