面向对象 2面向对象编程介绍&定义类与实例化输出对象&如何使用类&如何使用对象

面向对象编程介绍
面向对象:核心就是对象二字
对象就是特征与技能的结合体
优点:可扩展性强
缺点:编程复杂度高
应用场景:用户需求经常变化,互联网应用,游戏,企业内部应用

定义类与实例化输出对象
类就是一系列对象相似的特征与技能的结合体
强调:站在不同角度,得到的分类是不一样的

在现实世界当中:一定是现有对象,后有类
在程序中:一定得先定义类,后调用类来处理对象

站在路飞学院的角度,大家都是学生

在现实世界中:
    对象1:王二丫
         特征:
                学校=‘luffycity'
                名字=’王二丫‘
                  性别=’女‘
          技能:
                   学习
                   吃饭
                   睡觉   
    对象2:李三
    	   特征:
	                  学校=‘luffycity'
	                  名字=’李三‘
	                  性别=’男‘
           技能:
	                   学习
	                   吃饭
	                   睡觉
  对象3:李四
    		特征:
	                  学校=‘luffycity'
	                  名字=’李四‘
	                  性别=’男‘
            技能:
	                   学习
	                   吃饭
	                   睡觉
	总结现实中路飞学院的学生类
	相似的特征
	  		学校=‘luffycity'
	相似的技能 
	               学习
                   吃饭
                   睡觉    
  

#先定义类

class LuffyStudent:
    school = 'luffycity'

    def learn(self):
        print('is learning')

    def eat(self):
        print('is eating')

    def sleep(self):
        print('is sleeping')


#后产生对象
stu1 = LuffyStudent()
stu2 = LuffyStudent()
stu3 = LuffyStudent()
print(stu1)
print(stu2)
print(stu3)


如何使用类



#先定义类

class LuffyStudent:
    school = 'luffycity'#数据属性

    def learn(self):#函数属性
        print('is learning')

    def eat(self):#函数属性
        print('is eating')

    def sleep(self):
        print('is sleeping')
   # print('run')

# #查看类的名称空间
# print(LuffyStudent.__dict__)
# print(LuffyStudent.__dict__['school'])
# print(LuffyStudent.__dict__['learn'])

#查
print(LuffyStudent.school) #print(LuffyStudent.__dict__['school'])
print(LuffyStudent.learn)

#增

LuffyStudent.country ='china'
#print(LuffyStudent.__dict__)
print(LuffyStudent.country)

#删
del LuffyStudent.country

#改
LuffyStudent.school='Luffycity'

如何使用对象

#__init__方法用来为对象定制对象自己独有的特征
#先定义类

class LuffyStudent:
    school = 'luffycity'

    #  stu1,'王二丫','女',18
    def __init__(self,name,sex,age):
        self.Name = name
        self.Sex = sex
        self.Age = age

        #stu1.Name='王二丫'
        # stu1.Sex = '女'
        #stu1.Age = 18


    def learn(self):
        print('is learning')

    def eat(self):
        print('is eating')

    def sleep(self):
        print('is sleeping')


#后产生对象
stu1 = LuffyStudent('王二丫','女',18) #2、LuffyStudent.__init__(stu1,'王二丫','女',18)

#加上__init__方法后,实例化的步骤
#1、先产生一个空对象
#2、LuffyStudent.__init__(stu1,'王二丫','女',18)
#print(LuffyStudent.__init__)

#查
print(stu1.__dict__)
print(stu1.Name)
print(stu1.Age)
print(stu1.Sex)

#改
stu1.Name='李'
print(stu1.__dict__)
print(stu1.Name)

#删
del stu1.Name
print(stu1.__dict__)

#增
stu1.calss_name = 'python'
print(stu1.__dict__)

stu2=LuffyStudent('CANDY','女',11)
print(stu2.__dict__)
print(stu2.Name)
print(stu2.Age)
print(stu2.Sex)

猜你喜欢

转载自blog.csdn.net/qq_42936973/article/details/82853800
今日推荐