python--面向对象

1、变量表示特征,用函数表示技能,因而具有相同特征和技能的一类事物就是‘类’,对象是则是这一类事物中具体的一个。
2、class 类名:---------->默认格式
3、第一个函数必须是构造函数:def __init__(self,**,**)-------------->必须,执行完init相当于创建了一个对象
4、

































1
#新式类:类集成对象 2 #有多种属性类型 3 class xinshi(object): 4 @property 5 def price(self): 6 print('@PROPECTY'); 7 8 @price.setter 9 def price(self,value): 10 print('Price.setter'); 11 @price.deleter 12 def price(self): 13 print('price.delate'); 14 #调用以上新式类的多种属性(通过对象) 15 obj3=xinshi(); 16 obj3.price; 17 obj3.price=123; 18 del obj3.price; 19 20 #新式类练习:对商品价格进行修改、删除 21 class mypair(object): 22 #定义商品字段:商品名、商品价格、商品id 23 def __init__(self,c_name,c_id,c_price): 24 self.c_name=c_name; 25 self.c_id=c_id; 26 self.c_price=c_price; 27 #获取商品的价格属性 28 @property 29 def get_peice(self): 30 return self.c_price; 31 #修改商品的价格 32 @get_peice.setter 33 def get_peice(self,value): 34 val=value+self.c_price; 35 print(val); 36 #删除商品的价格属性 37 @get_peice.deleter 38 def get_peice(self): 39 return self.c_price; 40 #调用普通字段(通过对象):并初始化对象数据 41 obj5=mypair('商品1',110,40); 42 print(obj5.get_peice); 43 obj5.get_peice=10; 44 del obj5.get_peice; 45 46 47 #公有和私有 48 class siyou: 49 #定义一个普通字段,其中含有一个公有字段,一个私有字段 50 def __init__(self): 51 self.name1='公有'; 52 self.__name2='私有'; 53 #类内部访问这个私有字段 54 #print(__name2); 55 #外部访问类的普通字段(通过对象) 56 obj6=siyou(); 57 #访问公有 58 #同样的方式无法访问私有 59 print(obj6.name1); 60 #print(obj6.__name2); 61 62 63 class lei: 64 country='min'; 65 #定义属性:属性相当于变种的普通方法,即,也必须至少要有一个self参数 66 @property 67 def canshu1(self): 68 return 'XIEXIE'; 69 70 def __init__(self,cityname): 71 self.cityname=cityname; 72 #普通方法:至少要有一个self参数 73 def print_name(self): 74 print(self.cityname); 75 #静态方法:无参数 76 def print_name2(): 77 print('thankyou'); 78 #类方法:至少要有一个clt参数 79 #def print_name3(cls): 80 #print('类方法'); 81 82 #调用普通方法:通过对象 83 obj2=lei('janpese'); 84 obj2.print_name(); 85 #调用属性:跟普通方法一样,需要通过对象 86 obj2.canshu1; 87 #调用类方法,通过类 88 #lei.print_name3(); 89 90 #调用静态方法:通过类 91 lei.print_name2(); 92 #访问静态对象 93 #通过类可以直接访问静态对象 94 print(lei.country); 95 #访问普通对象 96 #需要先实例化,并附初始值 97 #即,访问普通对象,需要通过对象访问 98 #总结:通过类创建对象时,如果每个对象都具有相同的字段,那么就使用静态字段 99 #总结2:使用变量 100 101 102 #二、方法 103 104 #方法包括:普通方法、静态方法和类方法,三种方法在内存中都归属于类方式,区别在于调用不同。 105 106 #普通方法:由对象调用;至少一个self参数;执行普通方法时,自动将调用该方法的对象赋值给self; 107 #类方法:由类调用; 至少一个cls参数;执行类方法时,自动将调用该方法的类复制给cls; 108 #静态方法:由类调用;无默认参数; 109 ### 110 obj=lei('china'); 111 print(obj.cityname);
原文地址:https://www.cnblogs.com/shenyexiaoqingxin/p/10361700.html