为什么会有类?什么是类?什么是对象?类怎么用,类的特性?

148 阅读2分钟

1.为什么会有类?

我们在写代码的时候写了很多的对象,其中有些对象特性都是一样的,为了方便统一管理这些对象,所以就产生了类,类就是给对象分类。

2.什么是类?什么是对象?

类是一种抽象的概念(就像人类、猫科类、犬科类等),所以不占用内存,类中包含对象(人类里面有张三,翠花等),对象有具体的概念,占内存,存储在堆中,对象的指针存储在栈中,每一种对象有共同的属性(人会说话,能站立行走等),有不同的属性值(张三会唱歌,翠花会跳舞)。

3.类怎么用,类的特性?

1.类的封装

举个例子:我们定义一个人类People,人类都有名字name,有姓名age,有方法who


class People:

    def __init__(self,name,age):

        self.name = name

        self.age = age

    def who(self):

        print('名字是:', self.name,'年龄:', self.age)

2.类的继承 

我们定义一个学生类Students,学生类有人类的特性,所以继承人类People,然后学生类有自己的方法city


class Students(People):

    def __init__(self,name,age,street,road):

        People.__init__(self,name,age)

        self.street = street

        self.road = road

  


    def city(self):

        self.who()

        print('街道是:',self.street,'路在:',self.road)

stu = Students('李四',18,"上海",'1008号')

stu.city()

输出名字是: 李四 年龄: 18 城市是: 上海 街道: 1008号

3.类的多态

继续定义一个老师类Tearcher,继承People,自己定义方法teach,多态指的是一类事物有多种形态,(一个抽象类有多个子类,因而多态的概念依赖于继承)


class Tearcher(People):

    def __init__(self,name,age,subject,sex):

        People.__init__(self,name,age)

        self.subject = subject

        self.sex = sex

    def teach(self):

        print('教学科目是:',self.subject)

        print('性别',self.sex)

        self.who()

tea = Tearcher('Mary',25,'CS','女')

tea.teach()

  


性别 女 名字是: Mary 年龄: 25

  • > > 以上仅仅是我个人理解,如有不当,还请联系我删除或者修改