day16 面向对象二
类的成员之变量
1. 实例变量. 对象.xxx = xxx
2. 类变量. 直接写在类中的变量就是类变量. 类变量一般用类名来访问. 对象中共性的属性提取出来.
例:
class A:
a = 1 #类变量
def __ init__(self,name):
self.name = name #实例变量
类的成员之方法
1. 实例方法. 对象.方法()
2. 类方法. 类名.方法()
3. 静态方法. 类名.方法()
class Computer:
def play(self): #实例方法
print("我的电脑可以玩⼉") @staticmethod
def fare(): #静态方法
print("我的电脑⾮常⽜B, 可以煎鸡蛋") @classmethod #类方法
def cal(cls, a, b):
print(cls)
return a+b
属性@property
把方法转化成属性.
class Person:
def __init__(self):
pass @property #属性
def age(self):
return 1 p = Person()
age = p.age #调用
print(age)
私有
__作为前缀
在自己类中可以随意访问. 但是出了类任何人都不可以访问这个私有内容
class Person:
def __init__(self, laopo, mimi):
self.__laopo = laopo
self.__mimi = mimi
print(alex.__mimi) # 私有的. 谁都不能碰 ,执行后报错
day16 面向对象二的更多相关文章
- 2. 星际争霸之php面向对象(二)
题记==============================================================================本php设计模式专辑来源于博客(jymo ...
- Javascript面向对象二
Javascript面向对象二 可以通过指定原型属性来对所有的对象指定属性, Object.prototype.name="zhangsan"; Object.prototype. ...
- python面向对象二
1.1类的静态属性,类方法,类的静态方法 1.1.1静态属性(@property) 在类中: python内置的@property装饰器就是负责把一个方法(函数)变成属性来调用. class Stud ...
- canvas学习和面向对象(二)
Canvas 学习(二) 上一篇Canvas 学习(一)中我是用canvas绘制了一些基本和组合的图形. 现在开始绘制图片和动画帧,以及面向对象的升级版本. 还是一样,看代码,所有的代码都托管在git ...
- JavaScript 面向对象(二) —— 案例篇
看案例前可以先看看基础篇:JavaScript 面向对象(一) —— 基础篇 案例——面向对象的选项卡:把面向过程的程序一步步改成面向对象的形式,使其能够更加的通用(但是通用的东西,一般会比较臃肿). ...
- JavaScript面向对象(二)——成员属性、静态属性、原型属性与JS原型链
前 言 JRedu 上一篇博客中,我们介绍了JS中的面向对象,并详细的解释了this的指向问题.本篇博客,我们继续来学习JS的面向对象.来深入理解一下JavaScript OOP中的成员属性/方 ...
- 第八章:Python基础の面向对象(二)
本課主題 面向对象的多态 面向对象的成员 成员修饰符 特殊成员 面向对象其他应用 异常处理 设计模式与单例模式 面向对象的多态 指定参数类型只是多态的一种表现 另外一种是允许自己类型和自己的子类型(典 ...
- Python之面向对象二
面向对象的三大特性: 继承 继承是一种创建新类的方式,在python中,新建的类可以继承一个或多个父类,父类又可称为基类或超类,新建的类称为派生类或子类 python中类的继承分为:单继承和多继承 c ...
- Python自动化开发 - 面向对象(二)
本节内容 1.isinstance(obj,cls)和issubclass(sub,super) 2.反射 3.__setattr__,__delattr__,__getattr__ 一. isins ...
随机推荐
- day24
## 复习 1.类对象属性的查找顺序: 先找自身再找类1)类的名称空间:直接写在类中2) 对象的名称空间:写在__init__方法中,通过self.属性形成名称空间中的名字3) 类的方法:在类中用@c ...
- 在linux 上安装ansible
ansible 在线安装:yum install -y epel-releaseyum install -y ansible离线安装:rpm wget https://releases.ansible ...
- c++ 线程间通信方式
一:两个进程间的两个线程通信,相当于进程间通信 二:一个进程中的两个线程间通信 通信方式: 1.互斥锁 mutex; lock_guard (在构造函数里加锁,在析构函数里解锁) unique_loc ...
- SQLserver提示事务日志已满无法重建索引,前台提示日志已满处理方案
1.数据库--属性--选项--恢复模式:简单. 2.数据库--任务--文件类型:日志 在释放未使用的空间潜重新组织页:1M 3.数据库--属性-- ...
- android ------ AAPT2 error: check logs for details解决方法
AAPT 是全称是 Android Asset Packaging Tool,它是构建 App,甚至是构建 Android 系统都必不可少的一个工具.它的作用是将所有资源文件压缩打包到Android ...
- 2>&1 什么意思
1. 0 表示stdin标准输入 2. 1 表示stdout标准输出 3. 2表示stderr标准错误 意思是:把标准错误重定向到标准输出?
- SWUST OJ(599)
拉丁方阵 #include <iostream> #include <cstdlib> using namespace std; int main() { int n; cin ...
- 《hello--world团队》第一次作业:团队亮相
项目 内容 这个作业属于哪个课程 2016级计算机科学与工程学院软件工程(西北师范大学) 这个作业的要求在哪里 实验五 团队作业:软件研发团队组建 团队名称 <hello--world团队> ...
- 大量数据的excel导出
对于大型excel的创建且不会内存溢出的,就只有SXSSFWorkbook了.它的原理很简单,用硬盘空间换内存(就像hash map用空间换时间一样). private void writeToAla ...
- 微信为什么不能下载apk 微信不能打开App下载地址的问题
此方法可以实现微信内置浏览器跳转到手机其它浏览器,现在网上其它的方法都只是一个页面,让访问者自己手动点右上角浏览器打开,而这个不同,是可以直接自动跳转的. <?php error ...