【Python学习之旅】---多态(类的相关知识,面向对象三大特性:继承-多态-封装)

class Name:    __a=‘你是猪‘ #封装变量a    def __init__(self,name):        self.name=name

    def get_name(self):        print(‘我叫%s‘ %self.name)

n1=Name(‘陈宇霞‘)print(Name.__dict__) #查看类属性字典print(n1._Name__a)   #可以通过此种方式调用__a ,没有真正的封装

#执行结果:

{‘__module__‘: ‘__main__‘, ‘_Name__a‘: ‘你是猪‘, ‘__init__‘: <function Name.__init__ at 0x00000242BD968EA0>, ‘get_name‘: <function Name.get_name at 0x00000242BD968E18>, ‘__dict__‘: <attribute ‘__dict__‘ of ‘Name‘ objects>, ‘__weakref__‘: <attribute ‘__weakref__‘ of ‘Name‘ objects>, ‘__doc__‘: None}

你是猪

原文地址:https://www.cnblogs.com/chenyuxia/p/12130446.html

时间: 2024-10-08 19:43:27

【Python学习之旅】---多态(类的相关知识,面向对象三大特性:继承-多态-封装)的相关文章

面向对象编程(十四)——面向对象三大特性之多态②

面向对象最核心的机制——动态绑定,也叫多态. 通过下面的例子理解动态绑定,即多态 1 package javastudy.summary; 2 3 class Animal { 4 /** 5 * 声明一个私有的成员变量name. 6 */ 7 private String name; 8 9 /** 10 * 在Animal类自定义的构造方法 11 * @param name 12 */ 13 Animal(String name) { 14 this.name = name; 15 } 16

Python学习之旅 —— 基础篇(八)面向对象

概述 面向过程:根据业务逻辑从上到下写垒代码 函数式:将某功能代码封装到函数中,日后便无需重复编写,仅调用函数即可 面向对象:对函数进行分类和封装,让开发“更快更好更强...” 对比示例:函数式变成和面向对象编程 连接数据库的增删改查 # 函数式编程 def slect(host, username, password, sql): pass def create(host, username, password, database): pass def remove(host, usernam

《Python》 面向对象三大特性之多态、封装

一.多态 1.什么是多态? 一个类表现出的多种状态:通过继承来实现的 在Java中的表现:在一个函数中需要给参数指定数据类型,如果这个地方可以接收两个以上类型的参数,那么这些类型应该有一个父类,这个父类是所有子类对象的类型. 在Python中:函数的参数不需要指定数据类型,所以我们也不需要通过继承的形式来统一一组类的类型,换句话说:所有的对象其实都是object类型,所有在Python当中处处是多态. # 多态指的是一类事物有多种形态 # 动物有多种形态:人,狗,猪 import abc cla

python全栈开发【第十四篇】面向对象三大特性——继承

一.组合 组合:组合指的是,在一个类中以另外一个类的对象(也就是实例)作为数据属性,称为类的组合 也就是说:一个类的属性是另一个类的对象,就是组合 例子: 圆环是由两个圆组成的,圆环的面积就是外圆的面积减去内圆的面积.圆环的周长就是内圆的周长加上外圆的周长,这个时候,我们首先设计一个圆形类,计算一个圆的面积和圆的周长.然后在'圆环类'组合圆形的实例作为自己的属性来用(这样的目的就是为了不用在写面积和周长的方法了,直接组合圆类的面积和方法去求解.减少了代码的重用) #求圆环的面积和周长 from

python 面向对象三大特性--继承

一.什么是继承 继承是一种创建新类的方式,在python中,新建的类可以继承一个或者多个父类,父类又可以称为基类活超类,新建的类称为派生类或子类. python中类的继承分为:单继承和多继承 class ParentClass1: #定义父类 pass class ParentClass2: #定义父类 pass class SubClass1(ParentClass1): #单继承,基类是ParentClass,派生类是SubClass pass class SubClass2(ParentC

Java中面向对象三大特性之——多态

多态的概述:  多态是继封装.继承之后,面向对象的第三大特性. 生活中,比如跑的动作,小猫.小狗和大象,跑起来是不一样的.再比如飞的动作,昆虫.鸟类和飞机,飞起来也是不一样的.可见,同一行为,通过不同的事物,可以体现出来的不同的形态.多态,描述的就是这样的状态. 多态的条件 1.继承 2.方法的重写 (为了让多态有意义) 3.父类的引用指向子类的对象 多态的体现 父类类型 变量名 = new 子类对象: 变量名.方法名(); 当使用多态方式调用方法时,首先检查父类中是否有该方法,如果没有,则编译

【Python学习之旅】---类的装饰器

#类的装饰原理,自定义一个高阶函数(把函数当做参数传入,返回值也是相同函数地址)def foo(bar): print(bar) bar.x=1 #操作Name的属性字典 bar.y=2 return bar@foo #Name=foo(Name)class Name: pass print(Name.__dict__) #输出Name的属性字典 #一切皆对象,函数也有属性字典@foodef test(): print('test函数')test()print(test.__dict__) #执

4月26 关于类,对象以及面向对象三大特性之封装

---恢复内容开始--- <?php//面向过程比如求一个圆的面积 $r=5; $m=3.14*$r*$r; //当直接规定半径时这是很方便的但是当变量改变时会出现代码的重复?>类和对象对象:能够见到的任何东西都可以称为对象, 也可以理解为类实例化出来的东西类: 对所有同类的对象抽象出来的东西 举例理解类和对象: 类:比如班级里面每个人相同的有学号,上课时间,休息时间,所上课程等:再比如说人所共有的姓名,性别,年龄等等,这些所公有的都可以统称为类:就像数据库没给表的第一行 对象:具体到一条具体

4月28日 面向对象三大特性之多态

---恢复内容开始--- <?php //多态 //概念:当父类引用指向子类实例的时候,由于子类对父类函数进行了重写,导致我们在使用该引用去调用相应的方法表现出的不同 //条件: //1.必须有继承 //2.子类必须对父类的方法进行重写 class Ren { public $name; public $sex; function say() { echo "hello"; } } class China extends Ren { function Say() { echo &

[黑马程序员]Objective-C 面向对象三大特性之多态

什么是多态? 多态(Polymorphism)按字面的意思就是“多种状态”.在面向对象语言中,接口的多种不同的实现方式即为多态.引用Charlie Calverts对多态的描述——多态性是允许你将父对象设置成为和一个或更多的他的子对象相等的技术,赋值之后,父对象就可以根据当前赋值给它的子对象的特性以不同的方式运作.简单地说就是:允许将子类类型的指针赋值给父类类型的指针. 简单示例 #import <Foundation/Foundation.h> @interface Animal : NSO