一、类
创建类:
class Person():
pass
创建实例:
variable = Person()
给实例绑定属性,例如绑定name和age:
def __init__(self,name,age):
self.name = name
self.age = age
案例
class Person():
def __init__(self,name,age):
self.name = name
self.age = age
ba = Person('python',10)
print(ba.name,ba.age)
在类中封装方法:
添加一个打印的方法printPerson(self)
class Person():
def __init__(self,name,age):
self.name = name
self.age = age
ba = Person('python',10)
def printPerson(self):
print(self.name,self.age)
调用该方法
printPerson(ba)
二、私有变量
Python中,在变量前加上两个下划线__,即私有变量,相当于Java中private。如下把name设置为私有,age不变,则name外部不可直接访问。
def __init__(self,name,age):
self.__name = name
self.age = age
外部如需获取私有变量__name,可在Person类中定义get_name()方法,相当于Java中的get方法如:
class Person():
def __init__(self,name,age):
self.__name = name
self.age = age
#get方法
def get_name(self):
return self.__name
ba = Person('python',10)
print(ba.get_name())
外部如需修改私有变量__name,同样可在类中定义set_name()方法,相当于java中的set方法,可以看到以下代码,初始化变量ba的name = python,将ba.set_name = java,最后打印出的结果name值为”java“,如:
class Person():
def __init__(self,name,age):
self.__name = name
self.age = age
#get方法
def get_name(self):
return self.__name
#set方法
def set_name(self,name):
self.__name = name
ba = Person("python",1)
ba.set_name("java")
print(ba.get_name())
三、继承
继承是指子类继承父类的特征和行为,如有 父类Animal,子类Cat,Cat继承Animal:
Java版
class Cat extends Animal{
}
Python版
class Cat(Animal):
四、多态
Python中继承与多态的思想与Java的并无两样。
多态是指同一个行为具有多个不同表现形式或形态的能力。
网友评论