Python学习:类和对象(一)_微信公众号



Python进阶


Python学习:类和对象(一)_封装_02Python学习:类和对象(一)_微信公众号_03

Python学习:类和对象(一)_封装_04



类和对象(一)


      在原来我发布过Python入门学习的学习笔记,但迟迟没有更新Python的进阶学习。今天有时间就更新一下。微信关注公众号:夜寒信息。致力于为每一位用户免费提供更优质技术帮助与资源供给,感谢支持!





Python学习:类和对象(一)_微信公众号_05

01

对象


      下面我来给大家介绍对象。对象是模拟现实世界,将数据和代码封装起来。例如一个人,从外貌看他长得高,长的帅,两条腿,一个头。另一方面看他能做什么,他会写代码,会唱歌,会打游戏。我们把静态的描述称为属性(类比于外貌),动态的描述称为方法(类比于会写代码)。
下面给大家举个例子:


class Girl:         #新建一个类
#属性
look = '可爱'
height = '165cm'
age = '20'
boyriend = '暂无'
#方法
def code(self):
print("我会打代码")


def say(self):
print("我喜欢夜寒哥哥")
def wechat(self):
print("关注微信公众号'夜寒信息'")
def sleep(self):
print("我去和夜寒哥哥睡觉了")


      上面创建了一个类,注意类名以大写字母开头。类就相当于在生产中的一个模具,我们要利用它,就得实例化一个对象,然后才能调用它的内部的属性及方法。
以下给出方式:

>>> g = Girl()                  #实例化对象给变量g
>>> g.look #查看look属性
'可爱'
>>> g.height #查看height属性
'165cm'
>>> g.say() #调用say方法,注意加括号
我喜欢夜寒哥哥
>>> g.wechat() #调用wechat方法,注意加括号
关注微信公众号'夜寒信息'
>>> g.sleep() #调用sleep方法,注意加括号
我去和夜寒哥哥睡觉了


      注意,class所创建的Girl,并不是对象。只有将类实例化给一个变量,那个变量才称之为对象,例如例子中的g


02

封装

       

       封装就类似于打包,类中封装了属性和方法,打包成为一个模块供用户使用。同时类又有信息隐蔽功能,就像是你的游戏账号是一个类,里面有符文,点券。你把你的账号给你的女朋友玩,就类比于是把类分配给了对象。但你只想让她玩,不想让她熔你的符文,花你的点券。于是你将游戏账号设置了二级密码,将它封装起来。它可以使用你的符文,但不能销毁。

下面举个例子:

>>> ls=[]                      #新建一个列表
>>> ls.append(1) #使用append()函数添加一个,在列表内1
>>> ls
[1] #1添加入ls中


我们知道在往列表内添加数据要使用append方法,但我们不知道列表的类中append 方法是怎么实现的,这就是封装。


02

继承


      继承就子类共享父类的属性和方法,就像是传家宝,一代传一代,传同样的东西。
下面举个例子:

>>> class Boy(Girl):            #新建一个Boy类,在括号内写要继承的父类名
pass
>>> b = Boy() #将类实例化
>>> b.code() #调用code方法,注意加括号
我会打代码
>>> b.wechat() #调用wechat方法,注意加括号
关注微信公众号'夜寒信息'


我们可以看出,Boy这个类完美的继承了Girl的属性和方法。


02

多态


         多态指不同对象对同一方法响应不同的行动,例如男生见到夜寒哥哥会说“这个人很帅”,而女生见到夜寒哥哥会说“夜寒哥哥好帅,好想嫁给他”,同样是说,两种人说的话却是不同的。
下面我们举个例子:

class Boysee:                  #新建一个Boysee类


def say(self): #定义say方法
print("这个人很帅")
class Girlsee: #新建一个Girlsee类


def say(self): #定义say方法
print("夜寒哥哥好帅,好想嫁给他")


下面我们来将他运行实现

>>> b = Boysee()              #将类实例化
>>> g = Girlsee() #将类实例化
>>> b.say()
这个人很帅
>>> g.say()
夜寒哥哥好帅,好想嫁给他


由此我们看出,同样都调用了say方法,却输出了不同的结果,这就叫多态。




Python学习:类和对象(一)_实例化_06

Python学习:类和对象(一)_实例化_07

时光荏苒,记得奋力向前

Python学习:类和对象(一)_实例化_08

Python学习:类和对象(一)_实例化_09



Python进阶学习

关注微信公众号

夜寒信息

Python学习:类和对象(一)_微信公众号_10

喜欢点个

关注公众号

Python学习:类和对象(一)_封装_11

Python学习:类和对象(一)_微信公众号_12