>  기사  >  백엔드 개발  >  파이썬 학습------클래스 캡슐화, 상속, 다형성

파이썬 학습------클래스 캡슐화, 상속, 다형성

巴扎黑
巴扎黑원래의
2017-06-23 14:48:201451검색

캡슐화

캡슐화를 가장 잘 이해할 수 있습니다. 캡슐화는 객체지향의 특징 중 하나이며, 객체와 클래스 개념의 주요 특징이다.

캡슐화, 즉 객관적인 것을 추상 클래스로 캡슐화하는 것이며 클래스는 신뢰할 수 있는 클래스나 객체만 데이터와 메서드를 작동하도록 허용하고 신뢰할 수 없는 클래스에는 정보를 숨길 수 있습니다.

 1 class dog(object): 2     nationality='ch'#公有属性 3     def __init__(self,name,food,leven):#构造函数,方法,初始化方法 4         self.name=name #实例指针,指向 属性  对象成员 5         self.food=food 6         self.leven=leven 7         self.__haot='hhh'#前面双下划线定义为私有属性 8  9     def get_hoat(self):#定义方法为私有属性提供接口10         return self.__haot11     def say(self):#类中的方法  都是公有方法12         print('hello,my name is ',self.name)13     def eat(self,foods):14         print("my food is %s,but my eat %s"%(self.food,foods))15     def leve(self):16         print("my leve is ",self.leven)17 18     def __del__(self):19         print("删除中...")20 21 22 d=dog("liili",'gl',"5")23 d.say()24 d.eat('kkk')25 d.leve()26 print(d.get_hoat())#通用接口访问私有属性27 28 print(d._dog__haot)#强制访问私有属性29 print(d.nationality)30 31 dog.nationality='chan'32 print(d.nationality)33 d.nationality='us'34 print(d.nationality)
코드 보기

 1 class F1(object): 2     def __init__(self,n): 3         self.N = n 4         print('F1') 5  6 class F2(object): 7     def __init__(self,arg1): 8         self.a = arg1 9         print('F2')10 11 class F3(object):12     def __init__(self,arg2):13         self.b = arg214         print('F3')15 16 17 18 c1=F1('yjj')19 c2=F2(c1)#可以封装一个对象20 c3=F3(c2)#可以封装多层的对象21 print(c3.b.a.N)#通过  .  调用

상속

상속이란 원본을 다시 작성하지 않고 기존 클래스의 모든 기능을 사용할 수 있는 기능을 말합니다. 이러한 기능은 케이스에서 확장됩니다. 수업의.

상속을 통해 생성된 새 클래스를 "하위 클래스" 또는 "파생 클래스"라고 합니다.

상속된 클래스를 "기본 클래스", "상위 클래스" 또는 "슈퍼 클래스"라고 합니다. 코드 보기

코드 보기

위 내용은 파이썬 학습------클래스 캡슐화, 상속, 다형성의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
이전 기사:Django Ajax 사용다음 기사:Django Ajax 사용