类定义

1.类的定义

class Role(object):
    def __init__(self,name,role,weapon,life_value):
        self.name = name
        self.role = role
        self.weapon = weapon
        self.life_val = life_value

    def buy_weapon(self,weapon):
        print("%s is buying [%s]" %(self.name,weapon))
        self.weapon = weapon

p1 = Role("san","Police","B10",90)
t1 = Role("liwen","Terrorist","B11",100)

p1.buy_weapon("AK47")
t1.buy_weapon("B51")

print("P1:",p1.weapon)
print("T1:",t1.weapon)

2.类的继承

#!/usr/bin/env python
#-*- coding:utf-8 –*-

class SchoolMember(object):
    def __init__(self,name,age,sex):
        self.name = name
        self.age = age
        self.sex = sex

    def enroll(self):
        print("SchoolMember [%s] is enrolled!" %self.name)

class Teacher(SchoolMember):
    def __init__(self,name,age,sex,course,salary):
        super(Teacher,self).__init__(name,age,sex)
        self.course = course
        self.salary = salary

    def teaching(self):
        print("Teacher [%s] is teaching [%s]" %(self.name,self.course))

class Student(SchoolMember):
    def __init__(self,name,age,sex,course,tution):
        super(Student,self).__init__(name,age,sex)
        self.course = course
        self.tution = tution

    def pay_tution(self):
        print("cao,student [%s] paying tution [%s]" %(self.name,self.tution))

#t1 = Teacher("alex",21,"F","PY",1000)
s1 = Student("san",24,"M","PY",500)
时间: 2024-08-02 02:49:57

类定义的相关文章

javascript类定义小结

网上可以找到各种各样的javascript定义类的方法: 1.ECMAScript 定义类或对象 2.Javascript定义类(class)的三种方法 我想整理出一个“简洁”的类定义模板,实现代码的模块化. 一.命名空间 //根命名空间 var Root; if(!Root) Root={}; ... //二级命名空间 if(!Root.SecondNS) Root.SecondNS={}; 诸如此类. 二.类定义 通过定义类,实现代码的模块化    <script> //#region 类

Obj-C 语言学习 笔记(II)类定义与实现

Obj-C的类定义,与C++一样,头文件和实现文件分开. 注:本文中的例子采用Mitch Fisher, Gary Bennett, Brad Lees所编<Objective-C 初学者指南>一书中的例子.本人编译的环境为Xcode 7. 不知是否因为苹果公司在推swift,个人在.h文件里写东西的时候coding辅助跟不上.在Swift中,类的声明和实现被归在同一个.swift文件中. 头文件中类的声明 - 成员变量部分 // // RadioStation.h // RadioStati

c++类定义和类实现

预备知识: c++中我们cpp文件和.h文件的区别是,cpp文件是需要编译的文件,成为一个独立的编译单元,而h文件从来是不需要编译,只是用于预处理. 通常我们在cpp文件中,完成函数的实现,然后在h中则是对于函数的声明,由于默认情况下,全局变量和全局函数存储类型都是extern类型的,所以我们不需要显示的使用extern 这样,我们其他的cpp文件,只要#include .h文件,则在cpp中实现的函数,就能在其他cpp中使用,因为我们已经用.h文件,完成了extern函数声明的操作. c++类

JS类定义方式

// 方法1 对象直接量 var obj1 = { v1 : "", get_v1 : function() { return this.v1; }, set_v1 : function(v) { this.v1 = v; } }; obj1.set_v1('hello1'); alert(obj1.get_v1()); // 方法2 定义函数对象 var Obj = function() { var v1 = ""; this.get_v1 = function(

php 类中定义全局变量|php类定义变量|php类定义常量

PHP 预定义超全局数组/变量 => http://www.q3060.com/list3/list117/23295.html PHP预定义变量 - PHP 超级全局变量 => http://www.q3060.com/list3/list117/23278.html php怎么定义全局变量 => http://www.q3060.com/list3/list117/22852.html php 的全局变量与局部变量 => http://www.q3060.com/list3/l

Js 类定义的几种方式

提起面向对象我们就能想到类,对象,封装,继承,多态.在<javaScript高级程序设计>(人民邮电出版社,曹力.张欣译.英文名字是:Professional JavaScript for Web Developers)这本书中描述的还算比较详细.我们看看JavaScript中定义类的各种方法. 1.工厂方式 javaScript中创建自己的类和对象,我们应该是必须掌握的,我们都知道javaScript中对象的属性可以在对象创建后动态定义,比如下面的代码: <script type=&q

C++ 类定义

C++ 类定义 定义一个类,本质上是定义一个数据类型的蓝图.这实际上并没有定义任何数据,但它定义了类的名称意味着什么,也就是说,它定义了类的对象包括了什么,以及可以在这个对象上执行哪些操作. 类定义是以关键字 class 开头,后跟类的名称.类的主体是包含在一对花括号中.类定义后必须跟着一个分号或一个声明列表.例如,我们使用关键字 class 定义 Box 数据类型,如下所示: class Box { public: double length;   // Length of a box dou

C++:成员函数实现在类定义中与在类定义外的区别

//a.cpp class A{ public: int fun(int x){ return (x*x+1000); } }; void tt() { } //b.cpp class A{ public: int fun(int x); }; void tt(); int yy() { tt(); A a; return a.fun(3); } 将它们分别编译后再链接:显示链接错误,因为b.cpp(b.o)中找不到A::fun(int)的引用. 将以上的a.cpp改为如下所示:class A{

定义一个长方形类,定义 求周长和面积的方法实例

/* 定义一个长方形类,定义 求周长和面积的方法, 然后定义一个测试了Test2,进行测试. 长方形的类: 成员变量: 长,宽 成员方法: 求周长:(长+宽)*2; 求面积:长*宽 注意: import必须出现在所有的class前面.*/ import java.util.Scanner; class ChangFangXing { //长方形的长 private int length; //长方形的宽 private int width; public ChangFangXing(){} //

只能从脚本中调用在类定义上有[ScriptService]属性的Web服务问题的解决方案

ajax调用webservice中的接口时, 会出现[只能从脚本中调用在类定义上有[ScriptService]属性的...]的异常. 这是因为, 在.net3.5中, 访问web服务, 要对web服务添加修饰: [System.Web.Script.Services.ScriptService]