Python中Class类用法实例分析

Python是一种面向对象的编程语言,面向对象编程的核心是类 。类是一种用户自定义的数据类型,它封装了数据和方法 。在Python中,类是一个对象,它可以被实例化为一个实例 。本文将从多个角度分析Python中Class类的用法,并通过实例进行说明 。
一、定义类

Python中Class类用法实例分析

文章插图
在Python中,定义一个类需要使用关键字class,语法如下:
```python
class ClassName:
#类的代码块
```
类名一般使用大写字母开头,类的代码块中可以定义属性和方法 。例如,下面定义一个Person类:
```python
class Person:
name = ""
age = 0
def __init__(self, name, age):
self.name = name
self.age = age
def say_hello(self):
print("Hello, my name is", self.name)
```
这个类有两个属性name和age,一个构造方法__init__和一个方法say_hello 。其中,__init__是一个特殊的方法,用于创建对象时初始化对象的属性 。
【Python中Class类用法实例分析】二、创建对象
在Python中,通过类来创建对象需要使用类名后面跟一对括号,语法如下:
```python
对象名 = 类名(参数列表)
```
例如,下面创建一个Person对象:
```python
p = Person("Tom", 20)
```
这个语句创建了一个名为p的Person对象,它的name属性为"Tom",age属性为20 。
三、访问对象属性和方法
在Python中,访问对象的属性和方法需要使用点号操作符,语法如下:
```python
对象名.属性名
对象名.方法名(参数列表)
```
例如,下面访问p对象的属性和方法:
```python
print(p.name)
p.say_hello()
```
这个语句输出p对象的name属性,然后调用p对象的say_hello方法 。
四、继承
在Python中,使用继承可以实现代码的复用,语法如下:
```python
class SubClassName(ClassName):
#子类的代码块
```
其中,SubClassName是子类的名称,ClassName是父类的名称 。子类可以继承父类的属性和方法,并可以添加自己的属性和方法 。例如,下面定义一个Student类,它继承自Person类:
```python
class Student(Person):
grade = ""
def __init__(self, name, age, grade):
Person.__init__(self, name, age)
self.grade = grade
def say_hello(self):
print("Hello, my name is", self.name, "and I am a student")
```
这个类有一个属性grade,重写了父类的say_hello方法 。其中,调用父类的构造方法需要使用类名来调用,语法为ClassName.__init__(self, 参数列表) 。
五、多态
在Python中,使用多态可以实现不同对象调用同一方法时的不同行为 。例如,下面定义一个函数,它接受一个参数并调用这个参数的say_hello方法:
```python
def greet(obj):
obj.say_hello()
```
这个函数可以接受任何具有say_hello方法的对象作为参数,例如,下面的语句:
```python
greet(p)
greet(s)
```
这个语句分别调用greet函数并传入p和s两个对象作为参数,因为它们都具有say_hello方法,所以它们的行为不同,p输出"Hello, my name is Tom",s输出"Hello, my name is Tom and I am a student" 。

    推荐阅读