我在Java不久前编码,我记得class关键字如何能在班里的任何方法里面访问,的Java类的变量和Python中
例,
int age
int xyz
public void abc(int aga,int xyz) {
this.age = age;
this.xyz = xyz;
}
现在在上面的代码中, this.age
和this.xyz
引用了类变量。 这两个变量是类变量,并已在方法abc
, 之外声明,因此,这两个变量可以在类中的任何位置访问。
现在,如果我们谈论的Python,
在Python中__init__
方法就是建构, 如果我宣布__init__
内的任何变量,那又是访问其类的任意位置, - 即使它的内部声明一个方法 - 就像Java类变量一样?
例如, 考虑以下代码,
Class Main:
def __init__(self):
self._age = None
self._xyz = None
变量age
和xyz
在里面__init__
声明,我可以访问他们在类Main
其它方法吗? 我可能知道答案是肯定的,但为什么答案是肯定的? 这些变量是在一个方法内部声明的,而不是声明为类变量,那么他们怎样才能被其他方法和其他类访问。
你试过了吗? –
是的,我试过了,这就是为什么我问。因为在java中,这个变量是用来当我们访问类变量,但在Python中没有必要在上面的代码中写自己。在我的代码中(我正在学习),变量age和xyz从未在类中声明过(只在__init__中声明),但是可以在其他类中访问它们。 –
是的,你可以。只要将它引用为'self._age' – karthikr