当前位置: 首页 > news >正文

沈阳高端网站公司自建网站备案

沈阳高端网站,公司自建网站备案,搭建正规网站,吉安网站建设前言 Python从设计之初就已经是一门面向对象的语言#xff0c;正因为如此#xff0c;在Python中创建一个类和对象是很容易的。本章节我们将详细介绍Python的面向对象编程。如果你以前没有接触过面向对象的编程语言#xff0c;那你可能需要先了解一些面向对象语言的一些基本…前言 Python从设计之初就已经是一门面向对象的语言正因为如此在Python中创建一个类和对象是很容易的。本章节我们将详细介绍Python的面向对象编程。如果你以前没有接触过面向对象的编程语言那你可能需要先了解一些面向对象语言的一些基本特征在头脑里头形成一个基本的面向对象的概念这样有助于你更容易的学习Python的面向对象编程。 接下来我们先来简单的了解下面向对象的一些基本特征。 1. 面向对象技术简介 类(Class): 用来描述具有相同的属性和方法的对象的集合。它定义了该集合中每个对象所共有的属性和方法。对象是类的实例。类变量类变量在整个实例化的对象中是公用的。类变量定义在类中且在函数体之外。类变量通常不作为实例变量使用。数据成员类变量或者实例变量, 用于处理类及其实例对象的相关的数据。方法重写如果从父类继承的方法不能满足子类的需求可以对其进行改写这个过程叫方法的覆盖override也称为方法的重写。局部变量定义在方法中的变量只作用于当前实例的类。实例变量在类的声明中属性是用变量来表示的。这种变量就称为实例变量是在类声明的内部但是在类的其他成员方法之外声明的。继承即一个派生类derived class继承基类base class的字段和方法。继承也允许把一个派生类的对象作为一个基类对象对待。例如有这样一个设计一个Dog类型的对象派生自Animal类这是模拟是一个is-a关系例图Dog是一个Animal。实例化创建一个类的实例类的具体对象。方法类中定义的函数。对象通过类定义的数据结构实例。对象包括两个数据成员类变量和实例变量和方法。 2. 创建类与实例化对象 使用 class 语句来创建一个新类class 之后为类的名称并以冒号结尾: class Person:def say(self):print(Hello World) 类创建实例 class Person:username password def __init__(self,username,password):self.username usernameself.password passworddef getUsername(self):return self.usernamedef getPassword(self):return self.password user Person(admin,123456) print(user.getUsername()) print(user.getPassword()) 注意 1. 第一种方法__init__()方法是一种特殊的方法被称为类的构造函数或初始化方法当创建了这个类的实例时就会调用该方法 2. self 代表类的实例self 在定义类的方法时是必须有的虽然在调用时不必传入相应的参数。类的方法与普通的函数只有一个特别的区别——它们必须有一个额外的第一个参数名称, 按照惯例它的名称是 self。 3. 类的继承 面向对象的编程带来的主要好处之一是代码的重用实现这种重用的方法之一是通过继承机制。 通过继承创建的新类称为子类或派生类被继承的类称为基类、父类或超类。 语法 class 派生类名(基类名)1、如果在子类中需要父类的构造方法就需要显式的调用父类的构造方法或者不重写父类的构造方法。详细说明可查看 python 子类继承父类构造函数说明。 2、在调用基类的方法时需要加上基类的类名前缀且需要带上 self 参数变量。区别在于类中调用普通函数时并不需要带上 self 参数 3、Python 总是首先查找对应类型的方法如果它不能在派生类中找到对应的方法它才开始到基类中逐个查找。先在本类中查找调用的方法找不到才去基类中找。 class Person:username password def __init__(self,username,password):self.username usernameself.password passworddef getUsername(self):return self.usernamedef getPassword(self):return self.password class Admin(Person):isAdmin Truedef __init__(self,username,password,isAdmin):super().__init__(username,password)self.isAdmin isAdmindef printInfo(self):print(Username: self.username \nPassword: self.password \nAdmin: str(self.isAdmin))admin Admin(admin,123456,True) admin2 Admin(user,123456,False)admin.printInfo() admin2.printInfo()在子类中我们可以使用super()来调用父类中的构造函数、变量和方法 4. 类继承后方法的重写 如果你的父类方法的功能不能满足你的需求你可以在子类重写你父类的方法。 class Person:username password def __init__(self,username,password):self.username usernameself.password passworddef getUsername(self):return self.usernamedef getPassword(self):return self.password def printInfo(self):print(Username: self.username)print(Password: self.password) class Admin(Person):isAdmin Truedef __init__(self,username,password,isAdmin):super().__init__(username,password)self.isAdmin isAdmindef printInfo(self):print(Username: self.username \nPassword: self.password \nAdmin: str(self.isAdmin))user Person(user1,123456) user.printInfo()admin Admin(admin,123456,True) admin2 Admin(user,123456,False)admin.printInfo() admin2.printInfo() 5. 类继承后方法的重载 6. 类的私有属性和方法 类的私有属性和私有方法类似于Java的private访问修饰符又有不同的地方。 类的私有属性         __private_attrs两个下划线开头声明该属性为私有不能在类的外部被使用或直接访问。在类内部的方法中使用时 self.__private_attrs。 类的方法 在类的内部使用 def 关键字可以为类定义一个方法与一般函数定义不同类方法必须包含参数 self,且为第一个参数 类的私有方法 __private_method两个下划线开头声明该方法为私有方法不能在类的外部调用。在类的内部调用 self.__private_methods class User:__username__passworddef __init__(self,username,password):self.__usernameusernameself.__passwordpassworddef getUsername(self):return self.__usernamedef setUsername(self,username):self.__usernameusernamedef getPassword(self):return self.__passworddef setPassword(self,password):self.__passwordpassworduser User(admin,123123) print(user.getUsername()) user.setPassword(123456) print(user.getPassword()) 单下划线、双下划线、头尾双下划线说明 __foo__: 定义的是特殊方法一般是系统定义名字 类似 __init__() 之类的。 _foo: 以单下划线开头的表示的是 protected 类型的变量即保护类型只能允许其本身与子类进行访问不能用于 from module import * __foo: 双下划线的表示的是私有类型(private)的变量, 只能是允许这个类本身进行访问了。
http://www.hkea.cn/news/14412197/

相关文章:

  • 固原市住房和城乡建设厅网站查网站域名备案价格
  • 网站排名有什么用做内贸的什么网站效果好
  • Apple 手机网站制作wordpress 邮件差价
  • 毕业设计网站设计步骤网站开发制作培训学校
  • 网站优化 代码网页设计基础是什么
  • 江苏齐力建设集团网站推广引流平台app大全
  • 信息门户网站怎么做wordpress如何编辑页面
  • 如何使用win2008iis建设网站微信手机网站开发
  • 班级网站建设网络装修平台哪家最好
  • 北京的重要的网站荆州做网站
  • 电子商务网站成本logo是黑色 怎么调网站的色调
  • 医院网站建设价格东莞关键词排名提升
  • 邢台公司网站设计西安网约车
  • 杭州网站推广宣传广州网站建设公司乐云seo
  • wordpress建站落后吗200万做网站
  • 招聘网站开发的背景企业网站建设智恒网络
  • 网站开发软件是什么专业做网站的空间在哪买
  • 新民个人网站建设优势巩义市网站建设
  • 如何看网站的建站时间做网站关于我们
  • 网站收录没了a5做网站
  • 不是万维网的网站专门做网站的公司 南阳
  • 杭州网站怎么制作那么在线crm是免费
  • 新颖的网站策划wordpress支持python吗
  • 怎么想百度提交网站免费的招聘网站
  • 网站建站个人网站开发与实现开题报告
  • 网站收录怎么做宁波seo资源
  • 网站建设是在商标哪个类别邢台网站建设厂家
  • 乌兰察布盟建设银行网站鄂州网站建设设计
  • 晋中市两学一做网站农业科技公司网站模板
  • 网站上面的彩票快3怎么做关键词搜索量全网查询