python中的类和对象,属性和方法

一、面向对象的概述
面向对象是一种描述业务问题、设计业务实体和实体之间关系的方法
二、类和对象
1、类和对象得区别:类是对客观世界中事物得抽象,而对象是类实例化后的实体
   例如:汽车模型就是一个类,制造出来的每辆汽车就是一个对象
2、类的定义:
   (1)python使用class关键字定义一个类,类名的首字母一般要大写:
       例如:

class Student: #定义了一个Student类
   (2)类的主体由一系列的属性和方法组成
       例如:

class Fruit: #定义一个类
def __init__(self): #类的构造函数,用于初始化类的内部状态,为类的属性设置默认值
self.name=name #定义name属性
self.color=color #定义color属性
def grow(self): #定义一个函数,为类的函数,称为方法;它至少有一个参数self
print(‘Fruit grow’)
3、对象的创建:
   创建对象的过程称为实例化,当一个对象被创建后,包含3个方面的特性:对象的句柄、属性和方法
   对象的句柄:用于区分不同的对象

例如:

if __name__=="__main__" #当程序作为主程序运行
fruit=Fruit() #实例化:创建一个对象,创建了一个Fruit对象
fruit.grow() #对象调用grow()方法
4、类的属性和方法
   (1)类的属性:一般分为公有属性和私有属性,默认情况下所有得属性都是公有的,如果属性的名字以两个下划线开始,就表示为私有属性,没有下划线开始的表示公有属性。 python的属性分为实例属性和静态属性,实例属性是以self为前缀的属性,如果构造函数中定义的属性没有使用self作为前缀声明,则该变量只是普通的局部变量,类中其它方法定义的变量也只是局部变量,而非类的实例属性。

例如:

class Fruit:
price=0 #定义一个类属性
def __init__(self): #构造函数
self.color="red" #实例属性,以self为前缀
zone="China" #局部变量,不以self为前缀
if __name__=="__main__":
print(Fruit.price) #使用类名调用类变量 0
apple=Fruit() #实例化apple
print(apple.color) #打印apple实例的颜色 red
Fruit.price=Fruit.price+10 #将类变量+10
print("apple‘s price:",+str(apple.price)) #打印apple实例的price 10
banana=Fruit() #实例化banana
print("banana‘s price:"+str(banana.price)) #打印banana实例的price 10
        注意:python的类和对象都可以访问类属性;类的外部不能直接访问私有属性(属性名以两个下划线开始),当把上面的self.color=color改为self.__color="red",再次执行print(Fruit.__color)的时候就会报错
    (2)类的方法:类的方法也分为公有方法和私有方法,私有方法不能被模块外的类或者方法调用,也不能被外部的类或函数调用。python利用staticmethon或@staticmethon 修饰器把普通的函数转换为静态方法

class Fruit:
price=0 #类变量
def __init__(self): #构造函数
self.__color="red" #定义一个私有属性,类的外部不能直接访问
def getColor(self): #类方法
print(self.__color) #打印出私有变量

@staticmenthod #使用修饰器静态方法
def getPrice(): #定义一个类方法
print(Fruit.price) #打印类变量
def __getPrice(): #定义私有函数,不能被模块外的类或者方法调用
Fruit.price=Fruit.price+10 #类变量+10
print(Fruit.price)
count=staticmenthod(__getPrice) #定义静态方法
if __name__=="__main__":
apple=Fruit() #实例化apple
apple.getColor() #使用实例私有变量, red;因为创建了对象apple,所以静态属性price执行一次
Fruit.count() #使用列名直接调用静态方法 10
banana=Fruit() #实例化 创建banana对象,所以静态属性第三次执行
Fruit.count() #实例调用静态方法 20
Fruit.getPrice() # 20
    (3)内部类的使用:在类的内部定义类
           内部类中的方法可以使用两种方法调用:
              第一种:直接使用外部类调用内部类,生成内部类的实例,在调用内部类的方法

object_name = outclass_name.inclass_name()
object_name.method()
              第二种:先对外部类进行实例化,然后再实例化内部类,最后调用内部类的方法

out_name = outclass_name()
in_name = out_name.inclass_name()
in_name.method()
     (4)__init__方法:构造函数用于初始化类的内部状态,为类的属性设置默认值(是可选的)。如果不提供__init__方法,python将会给出一个默认的__init__方法

class Fruit:
def __init__(self, color):
self.__color = color
print( self.__color)
def getColor(self):
print( self.__color)
def setColor(self, color):
self.__color = color
print(self.__color)
if __name__ == ‘__main__‘:
color = ‘red‘
fruit = Fruit(color) #red
fruit.getColor() #red
fruit.setColor(‘blue‘) #blue
  (5)__del__方法:构析函数用来释放对象占用的资源(是可选的)。如果程序中不提供构析函数,python会在后台提供默认的构析函数;所以只有在需要的时候才会定义构析函数
————————————————
版权声明:本文为CSDN博主「General_单刀」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_28284093/article/details/80092544

原文地址:https://www.cnblogs.com/xinhuang/p/12288848.html

时间: 2024-10-08 22:16:32

python中的类和对象,属性和方法的相关文章

简述Python中的类与对象

Python中的类 类的定义 示例: class Person: country = "China" def __init__(self, name, age): self.name = name self.age = age def speak(self, word): print(word) 其中 country 是类属性,即 Person类 的静态属性,speak() 为 Person类的函数属性,即类的动态属性~ 类的实例化 对上述示例的类进行实例化: >>>

Python 中的类与对象 初认识

一:类的声明 1类的关键字: 从第一天第一个项目起我们就接触过关键字,比如False True is not None return for while elif else import等等,这是语言中内定的一个语法规则吧,通过关键字告诉电脑下面一个字母或一段 代码是什么,要用来干什么,告诉电脑怎么以哪种规则去用. 而class就是类的关键字,告诉系统我要定义一个类了.让系统用理解类的规则来理解我下面 的一些代码.没有关键字来声明一下,系统就不知道下面的代码是什么. 2.标识符: 标识符就是用来

python中的类和对象

类和对象 1. 类和对象和概念 类:共性事物的抽象,是对某一类具有共同事物的描述,是具有相同属性和方法的集合 对象:类的实例,是共性事物的一个体现,是这类事物中的每个个体 2. 总结: 类是对象的模板,对象是类的实例 3. 创建类的语法 class Math: #类名一般首字母大写 a = 4 #属性 b = 5 def add(self): c = self.a + self.b return c 注意: 类名一般首字母大写,比如class User ,其中class是关键字 类里面包含属性(

python学习笔记8--面向对象--属性和方法详解

属性: 公有属性  (属于类,每个类一份) 普通属性  (属于对象,每个对象一份) 私有属性    (属于对象,跟普通属性相似,只是不能通过对象直接访问) 方法:(按作用) 构造方法 析构函数 方法:(按类型) 普通方法 私有方法(方法前面加两个下划线) 静态方法 类方法 属性方法 静态方法 @staticmethod静态方法,通过类直接调用,不需要创建对象,不会隐式传递self 类方法 @classmethod类方法,方法中的self是类本身,调用方法时传的值也必须是类的公有属性,就是说类方法

python中的类与对象

一.类的概念 首先,我们先来说说什么是类.看了很多关于python类的介绍,大多都介绍如何使用,但是对于概念却一笔带过,一个初学编程的小伙伴很难理解. 概括的说:类可以比作是某种类型集合的描述.然而这对于初学者来说并没有什么卵用.记得我在书上看到这部分的时候,书上是这样说的:类是一类事物的抽象,我盯着看了半天之后放弃了学习. 今天就来详细的说说: 我们把一类相同的事物,用相同的属性描述,里面封装了相同的方法,就叫做类. 二.对象的概念

浅析python中的类变量和对象变量

刚学python,学到了有关于类和对象的地方.对一个概念有点模糊,后来通过实践编码找到一定规律 在python中 class test(object): id=2 name='tt' list=['tt','dd'] def change(self,newA,new_id): self.id=new_id self.age=newA return self.age t1 = test() t1.change(21, 3) print t1.id #3 t2 = test() t2.age = 2

Python中的类(上)

在Python中,可以通过class关键字定义自己的类,然后通过自定义的类对象类创建实例对象. 例如,下面创建了一个Student的类,并且实现了这个类的初始化函数"__init__": class Student(object): count = 0 books = [] def __init__(self, name, age): self.name = name self.age = age pass 接下来就通过上面的Student类来看看Python中类的相关内容. 数据属性

python 中的类

python 中的类内容概述类的概念: 类是一组方法与属性的抽象集. 属性 实例变量(每个实例内存中) 类变量(类内存中) 私有属性 __var 方法 构造方法 析构函数(默认就有,代码为空,写了则相当于重构它) 其他方法 对象(object):类的实例(实例化一个类之后得到的对象) 类的特性: 封装: 把一些功能的实现细节不对外暴露 继承: 继承顺序:(先覆盖.再继承.再添加) 继承:代码复用 继承方式: 单继承 多继承 2.7 经典类 深度优先 新式类 广度优先 3.x 均广度优先 多态:

Python中的类和方法使用举例

1.类的属性 成员变量对象的创建创建对象的过程称之为实例化,当一个对象被创建后,包含三个方面的特性对象聚丙属性和方法,句柄用于区分不同的对象,对象的属性和方法,与类中的成员变量和成员函数对应,obj = MyClass()创建类的一个实例,扩号对象,通过对象来调用方法和属性 类的属性 类的属性按使用范围分为公有属性和私有属性类的属性范围,取决于属性的名称,共有属性---在内中和内外都能够调用的属性私有属性---不能在内外贝类以外函数调用定义方式:以""双下划线开始的成员变量就是私有属性