python代码如下:
# -*- coding:gb2312 -*-
class Dog:
def __init__(self,name,sex):
self.name = name
self.sex = sex
def __str__(self):
return ("狗的名字是%s,狗的性别是%s"%(self.name,self.sex))
#dog = Dog("AAA","BBB")
dog = Dog()
print(dog)
显示结果如图:
这个原因很简单,系统的意思就是说,在创建dog这个实例的时候,必须输入name和sex两个参数,结果我没有输入,所以程序崩溃。
而我最近在看JAVA的代码当中,JAVA在创建类的过程当中,可以同时写两个构造方法,一个带有参数,一个不带参数。
也就是说,当你输入的参数跟预先设定的不一样的时候,系统会自动调用不带参数的那个构造方法,这个好像称之为重载(请原谅我没有学过JAVA,我只是知道个大概,大概应该是这个意思)。
而我的问题是:
在python当中,是否也有跟JAVA这个特性一样的东西?也就是说,在上面这段python的代码中,我是否也可以做到,不输入属性,或者输入的属性跟预先设定的完全不一样的情况下,系统依然正常运行?那么我应该怎么写呢? 不知道我的表述是否清楚。