python2学习------基础语法3(类、类的继承、类成员函数、防御式编程)
1、类的定义以及实例化
# 类定义
class p:
""" this is a basic class """
basicInfo={"name":"lxh","nation":"China"}; # 类成员变量
def __init__(self): # 类成员函数需要传入self关键字
""" this is a init function of basic class """
print "this is a init function ... ";
def sub(self,a,b): # 类成员函数需要传入self关键字
""" this is a common function of basic class """
return a-b;
# 类实例化
a=p();
# 调用类方法
print a.sub(40,5); # -1
2、类的继承
# 继承类
class m(p): # 参数为需要被继承的类的名称
""" this is a sub-class of basic class """
def __init__(self):# 专用函数(函数名首尾带有双下划线)
print "sub class init function ... ";
self.__test();
def loopOutputFun(self,n):
if n<0:
print n,"is not a postive integer "
retrun;
for i in range(1,n,3):
print i;
else:
print "loop output over ... ";
def __test(self):# 私有函数(仅函数首部带有双下划綫)
print "类的私有函数,不能被类的实例直接调用,只能被专有函数调用(需要带self关键字)";
def __my__(self):# 专用函数(函数名首尾带有双下划线)
self.__test();
def dev__(self,a,b):
"""演示异常"""
try:
return a/b;
except Exception,e:
print e.message;
def __passTest__(seLf):
"""函数逻辑暂未规划好时,采用pass关键字进行处理"""
pass;
# 子类实例化
b=m();
# 调用子类方法
print b.sub(100, 55);
b.loopOutputFun(10);
b.__my__();
print b.dev__(10,2);
b.__passTest__();
3、
python2学习------基础语法3(类、类的继承、类成员函数、防御式编程)的更多相关文章
- python2学习------基础语法4(模块)
1.整体结构层次(a.py,b.py) 目标:b.py文件中导入a.py里面定义的class A,并调用A类里面的属性或相关方法. 2.模块导入 <1> __init__.py < ...
- python2学习------基础语法5(文件操作)
1.文件内容读取 a.txt teestttttttttttttt teestttttttttttttt teestttttttttttttt teestttttttttttttt teesttttt ...
- python2学习------基础语法5(常用容器以及相关操作)
1.list(列表) #生成数据list a=[x for x in range(10)]; #print a; #遍历list for i in a: pass; #print i; #追加元素 a ...
- python2学习------基础语法2(函数)
1.函数 # 无参数函数 def loopTest2(): a=1; while a<40: print a; a=a+1; if a==35: continue; else: print 'o ...
- python2学习------基础语法1 (变量、分支语句、循环语句、字符串操作)
1.变量类型 Numbers(数字):int,float,long String(字符串) List(列表) tuple(元组) dict(字典) bool(布尔):True,False # 删除变量 ...
- c++基类指针指向继承类调用继承类函数
类里面重载运算符>>, 需要使用友元函数,而友元函数,不能作为虚函数. 所以,基类指针无法直接调用继承类里重构的 >> ; 使用类转换,能解决掉,基类指针 调用 继承类 ...
- 类1(this指针/const成员函数/类作用域/外部成员函数/返回this对象的函数)
假设我们要设计一个包含以下操作的 Sales_data 类: 1.一个 isbn 成员函数,用于返回对象的 book_no 成员变量 2.一个 combine 成员函数,用于将一个 Sales_dat ...
- C++ 空类,默认产生哪些成员函数
C++ 空类,默认产生哪些成员函数. 默认构造函数.默认拷贝构造函数.默认析构函数.默认赋值运算符 这四个是我们通常大都知道的.但是除了这四个,还有两个,那就是取址运算符和 取址运算符 con ...
- 函数响应式编程及ReactiveObjC学习笔记 (-)
最近无意间看到一个视频讲的ReactiveObjC, 觉得挺好用的 但听完后只是了解个大概. 在网上找了些文章, 有的写的比较易懂但看完还是没觉得自己能比较好的使用RAC, 有的甚至让我看不下去 这两 ...
随机推荐
- Springboot三层架构
control调用service调用dao
- 【Javaweb】Servlet的xml和注解配置
1.xml <%@ page language="java" contentType="text/html;" %> <!DOCTYPE ht ...
- php cli 下 php.ini 配置
// 查看phpcli 模式下 扩展 php -m // 查看php cli 版本 php -v 查看命令行的ini路径,命令行下运行 php --ini Loaded Configuration F ...
- SystemC中文教程一
SystemC是什么 首先, SystemC不是一门新的语言,而是基于C++开发的library:因此,你所熟悉的C++知识都可以在SystemC建模时使用:理论上来说,SystemC library ...
- SpringBoot与Mybatis-plus整合,代码生成mvc层
一.添加pom依赖 <!-- mysql驱动 --> <dependency> <groupId>mysql</groupId> <artifac ...
- 小程序使用scroll-view横向滑动时,flex布局失效问题
最近在完善以前项目,类目增多,需要进行横向滑动 实现方法1 可以在外盒子scroll-view使用white-space: nowrap来禁止子盒子换行,子盒子使用display: inline-bl ...
- null值可以赋给引用变量,不能给基本类型
下面正确的写法是? cbyte i=128 boolean i=null long i=0xfffL double i=0.9239d null表示没有地址:null可以赋值给引用变量,不能将null ...
- c++模板(翁恺c++公开课[34-35]学习笔记)
为什么要有模板(templates):当我们需要一个列表(list),列表中元素可能都为X类型也可能都为Y类型,怎么来实现呢? 定义基类?可以实现,很多情况下可能不够简明的表达设计思想 克隆代码(写一 ...
- 数学公式在 iOS 中的表示
1. 三角函数 double sin (double);正弦 double cos (double);余弦 double tan (double);正切 2 .反三角函数 double asi ...
- How to recover if NMC cound not connect
Some times we suddently find that the NMC can not login,. You would see the sybase database error if ...