版权声明:本文为博主原创文章,可以随意转载,但是必须在开头标明出处。 https://blog.csdn.net/qq_29951983/article/details/82938168
文章适用人群:掌握Java语言,本文只说明python语法和Java语法不同之处,相同之处不做介绍。
文章目录
继承
单继承
class Animal:
a = 10
def eat(self):
print(self.a)
print("吃")
class Dog(Animal):
def dark(self):
print("叫")
dog = Dog()
dog.eat()
dog.dark()
多继承
class Father:
def f(self):
print("f1")
class Mother:
def f(self):
print("f2")
class Son(Father, Mother):
pass
s = Son()
s.f()
print(Son.mro())
关于导入模块
hello_python.py
class myClass:
def __init__(self, *args, **kwargs):
pass
def p(self):
print("hello module")
# 将类名赋值给test
test = myClass
# 导入py文件
import hello_python
# 调用hello_python.test用来创建构造函数
t = hello_python.test(100, 200, 300, 400)
t.p()
类的属性
定义属性
python定义属性不同于java,不用提前定义再使用
class Person:
def __init__(self, name, age):
self.name = name
self.age = age
def p(self):
print(self.name)
print(self.age)
al = Person("xieyaoyan", 23)
al.p()
私有变量以及私有变量访问方式
私有变量不能再类以外使用
class JustCounter:
__secretCount = 0 # 私有变量
publicCount = 0 # 公开变量
def count(self):
self.__secretCount += 1
self.publicCount += 1
counter = JustCounter()
counter.count()
counter.count()
print(counter.publicCount)
print(counter.__secretCount) # 报错,实例不能访问私有变量
但是私有变量可以通过特殊的方式访问
class Runoob:
__site = "www.runoob.com"
runoob = Runoob()
print(runoob._Runoob__site)
对象名 + _类名+私有变量名