面向对象 python 面向对象总结

python 面向对象总结

 

面向对象(OOP)概念

面向过程:早期的编程概念,类似于函数,但只能执行,没有返回值,将功能独立的代码封装成一个个函数,最后顺序地调用不同的函数

函数式编程:不仅能执行,还可以返回结果

面向对象: 面向对象是更大的封装,根据职责在一个对象里封装多个方法,顺序地让不同的对象调用不同的方法

类和对象

类和对象是面向对象编程的两个核心概念

类是一群具有相同特征或者行为的事物的统称,是抽象的,不能直接使用,特征被称为属性,行为被称为方法

类相当于一个一个模板,是负责创建对象的

对象是类创建出来的一个具体的存在,可以直接使用,由什么类创建的对象,就拥有那个类中定义的属性和方法

在程序开发中,先有类再有对象

先定义类:

复制代码
class Student (object):
    def __init__(self, name, age, sex):
        self.name = name
        self.age = age
        self.sex = sex

    def student_name(self):
        return 'my name is {}'.format(self.name)

    def student_sge(self):
        return 'my age is {}'.format(self.age)

    def student_sex(self):
        return 'i am a {}'.format(self.sex)
复制代码

再创建对象:则创建的对象就都有了这个类的属性和方法

new_student = Student('jia', 12, 'boy')
print(new_student.student_name())
new1_student = Student('jia', 12, 'boy')
print(new1_student.student_name())

 私有属性和私有方法

对象的某些属性或方法,可能只希望在对象内部被使用,不希望在外部被访问到,,私有属性和私有方法

定义方式:在定义属性和方法时, 在属性和方法前增加两个下划线,定义的就是私有属性或方法。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
class  Women:
     def  __init__( self , name):
         self .name  =  name
         self .__age  =  18
 
     def  __secret( self ):
         print ( '我的年龄:{}' . format ( self .__age))
 
 
student1  =  Women( '贾' )
# print(student1.__age)  # 由于是私有属性,所以不能在外部访问
# student1.__secret()  # 私有方法,也不能在外部访问
# print(student1._Women__age)  # 其实定义的私有方法/属性,是伪私有方法/属性,可以通过
# student1._Women__secret()    # 在调用的时候在被调用的方法/属性前加  _类名  ==》 _类名__名称,进行访

面向对象(OOP)概念

面向过程:早期的编程概念,类似于函数,但只能执行,没有返回值,将功能独立的代码封装成一个个函数,最后顺序地调用不同的函数

函数式编程:不仅能执行,还可以返回结果

面向对象: 面向对象是更大的封装,根据职责在一个对象里封装多个方法,顺序地让不同的对象调用不同的方法

类和对象

类和对象是面向对象编程的两个核心概念

类是一群具有相同特征或者行为的事物的统称,是抽象的,不能直接使用,特征被称为属性,行为被称为方法

类相当于一个一个模板,是负责创建对象的

对象是类创建出来的一个具体的存在,可以直接使用,由什么类创建的对象,就拥有那个类中定义的属性和方法

在程序开发中,先有类再有对象

先定义类:

复制代码
class Student (object):
    def __init__(self, name, age, sex):
        self.name = name
        self.age = age
        self.sex = sex

    def student_name(self):
        return 'my name is {}'.format(self.name)

    def student_sge(self):
        return 'my age is {}'.format(self.age)

    def student_sex(self):
        return 'i am a {}'.format(self.sex)
复制代码

再创建对象:则创建的对象就都有了这个类的属性和方法

new_student = Student('jia', 12, 'boy')
print(new_student.student_name())
new1_student = Student('jia', 12, 'boy')
print(new1_student.student_name())

 私有属性和私有方法

对象的某些属性或方法,可能只希望在对象内部被使用,不希望在外部被访问到,,私有属性和私有方法

定义方式:在定义属性和方法时, 在属性和方法前增加两个下划线,定义的就是私有属性或方法。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
class  Women:
     def  __init__( self , name):
         self .name  =  name
         self .__age  =  18
 
     def  __secret( self ):
         print ( '我的年龄:{}' . format ( self .__age))
 
 
student1  =  Women( '贾' )
# print(student1.__age)  # 由于是私有属性,所以不能在外部访问
# student1.__secret()  # 私有方法,也不能在外部访问
# print(student1._Women__age)  # 其实定义的私有方法/属性,是伪私有方法/属性,可以通过
# student1._Women__secret()    # 在调用的时候在被调用的方法/属性前加  _类名  ==》 _类名__名称,进行访

猜你喜欢

转载自www.cnblogs.com/2987831760qq-com/p/10705325.html