如何定义类
class ClassName(base_class[es]):
"optional documentation string"
static_member_declarations
method_declarations
使用 class 关键字定义类。 可以提供一个可选的父类或者说基类; 如果没有合适的基类,
那就使用 object 作为基类。class 行之后是可选的文档字符串, 静态成员定义, 及方法定
义。
class FooClass(object):
'''my very first class:FooClass'''
version = 0.1 #static
def __init__(self,name='hejian'):
'''constructor'''
self.name = name #class instance(data) attribute
print 'Created a class instance for',name
def showname(self):
'''display instance attribute and class name'''
print 'Your name is ',self.name
print 'My name is',self.__class__.__name__ #Class Name
@classmethod
def showver(self):
'''display class(static) attribute'''
print self.version
def addMe2Me(self,x):
return x + x
def getVersion(self):
return self.version
def setVersion(self,ver):
self.version = ver
def getClassName(self):
return self.__class__.__name__
@staticmethod
def staticMethod():
print "static method"
python和java不同的地方
java类属性可以通过类名和实例修改类变量,
python只能通过类名来修改类属性。
foo = FooClass()
foo.setVersion(0.3)
foo.showver()
foo2 = FooClass()
foo2.showver()
输出
Created a class instance for hejian
0.1
Created a class instance for hejian
0.1
foo = FooClass()
foo.setVersion(0.3)
foo.showver()
FooClass.version = 0.3
foo2 = FooClass()
foo2.showver()
输出:
Created a class instance for hejian
0.1
Created a class instance for hejian
0.3
分享到:
相关推荐
本文实例讲述了Python面向对象之静态属性、类方法与静态方法。分享给大家供大家参考,具体如下: 1. 静态属性:在函数前加@property,将函数逻辑”封装“成数据属性,外部直接调用函数名,如同调用属性一样。这个...
文章目录类的三大方法1、静态属性2、类方法、静态方法3、三大方法总结类的组合1、用法分析2、面试案例分析 本篇文章是上一篇:初学者python笔记(面向对象编程、类与对象)的后续篇,是关于Python中面向对象编程的更...
面向对象的三大特性是指:封装、继承和多态。 Python3 面向对象 Python从设计之初就已经是一门面向对象的语言,正因为如此,在Python中创建一个类和对象
类属性:python中一切皆为对象,首先要明白两个概念类对象和实例对象。 class Tool(object): count = 0 def __init__(self,name): self.name = name # 让类属性的值+1 Tool.count += 1 print(id(Tool("锤子")))...
本文实例讲述了Python实例方法、类方法、静态方法的区别与作用。分享给大家供大家参考,具体如下: Python中至少有三种比较常见的方法类型,即实例方法,类方法、静态方法。它们是如何定义的呢?如何调用的呢?它们...
ython 类语法中有三种方法,实例方法,静态方法,类方法。 ps.python中self,cls的区别 普通实例方法,第一个参数需要是self,它表示一个具体的实例本身。 如果用了staticmethod,那么就可以无视这个self,而将这...
第七周-第03章节-Python3.5-静态方法、类方法、属性方法.avi
本文实例讲述了Python面向对象程序设计之静态方法、类方法、属性方法原理与用法。分享给大家供大家参考,具体如下: 前言:认为方法与函数同意义,由于这里使用method,所以称为方法 静态方法: 使用@staticmethod...
三个方法都可以通过实例和类名调用,但静态方法和类方法不可以调用类里面的属性值。如果需要参数,需要自己传参。 何时定义静态方法和类方法:当你的某个函数与其它函数没有任何关系,就可以定义,静态方法和类方法...
刚接触Python中的面向对象,对于类方法和静态方法难以区分,通过查找知乎、CSDN论坛,废了好大的劲思路才逐渐明朗,所以就总结顺便分享一下。 首先开始编辑代码 # 普通方法、类方法、静态方法的比较 # 普通方法、...
1.类方法 类方法是从属于”类对象”的方法。类对象可以通过装饰器@classmethod来定义,具体格式... 类方法中可以访问实例属性和实例方法会导致错误,因为有类不一定有对象。 子类继承父类方法时,传入cls是自身对象,而
Python中至少有三种比较常见的方法类型,即实例方法,类方法、静态方法。它们是如何定义的呢?如何调用的呢?它们又有何区别和作用呢?且看下文。 首先,这三种方法都定义在类中。下面我先简单说一下怎么定义和调用...
Python从设计之初就已经是一门面向对象的语言,正因为如此,在Python中创建一个类和对象是很容易的。 一、类、对象概述 在面向对象程序设计中,...1.静态特性(即数据抽象):创建类时用变量形式表示对象特征的成员称为
Python-类属性,实例属性,类方法,静态方法,实例方法 类属性和实例属性 #coding:utf-8 class Student(object): name = 'I am a class variable' #类变量 >>> s = Student() # 创建实例s >>> print(s.name) # ...
主要介绍了Python基于类路径字符串获取静态属性,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
python 零基础学习篇
本文实例讲述了Python 面向对象静态方法、类方法、属性方法知识点。分享给大家供大家参考,具体如下: (1)静态方法–》-@staticmethod装饰类中方法 只是名义上归类管理, 实际上在静态方法里访问不了类或实例中的...
python方法