1
22
非静态方法需要 实例 班里的除非您传入了一个实例,或者在方法中创建了一个实例,否则您不能调用非静态方法,因为您不知道该方法应该在类的哪个实例上操作。 |
2
2
在静态方法中,没有类的实例。因此,在不存在实例的情况下,无法对实例调用实例方法。 |
3
1
要调用非静态方法(即实例方法),必须先拥有该方法对象的实例,然后才能调用该方法。
你真正想做的就是这个。注意
|
4
1
需要类的实例来调用非静态方法。您可以创建一个类名实例,然后这样调用method2:
静态关键字基本上将方法标记为可以通过仅引用其类型[类名]来调用。所有非静态方法都必须通过对象的实例引用。 |
5
0
因为“静态”方法就是所谓的“类方法”。也就是说,您可以通过类或实例在基于类的语言(如C)中的两种方法之一对对象进行分派。非静态成员可以由其他非静态成员调度到,相反,静态成员只能被其他静态成员调用。 记住,你可以通过“新”机制从一个到另一个,或者反之亦然。 |
6
0
定义的静态方法未提供对
如果试图从静态方法调用的成员方法
需要
一
|
7
0
首先,您需要创建类的实例,以便调用非静态方法或函数。
然后您可以如下调用函数:
|
8
0
静态成员只能直接访问类的其他静态成员,静态方法不能直接访问同一类的非静态成员。 静态方法或属性只能直接调用同一类的其他静态方法或属性(即,单独使用方法名),并且只能直接操作同一类中的静态变量。 要访问类的非静态成员,静态方法或属性必须使用对该类对象的引用。回想一下,静态方法与整个类相关,而非静态方法与类的特定对象(实例)相关,并且可以操作该对象的实例变量(以及类的静态成员)。 一个类的许多对象,每个对象都有自己的实例变量副本,可能同时存在。假设一个静态方法直接调用一个非静态方法。该方法如何知道要操作哪个对象的实例变量?如果在调用非静态方法时不存在该类的对象,会发生什么? Source |
Eris · 纯虚拟成员有什么优势吗(除了他们可能防止的人为错误)? 2 年前 |
AJA SMBAT · 我在获取列表而不是绑定方法时遇到问题 2 年前 |
KiraHoneybee · 具有构造函数参数的模板化类 2 年前 |
amirreza870 · Python OOP-更改类文本 2 年前 |
Rocket Procd · 获取活动类实例的数量 2 年前 |
cred · 为什么我请求的变量在从另一个类调用时显示为0.0? 2 年前 |
Oliver Guy · 一个类的所有实例共享相同的值 2 年前 |