你的方法中并没有对i,num[]和name[]做定义,所以应该是定义成类中的成员变量了。另外你说是在子类中调用inf()这个方法的,所以这些变量应该是设置成公共或保护的了,这样的话你在子类中想要使用这几个经inf()修改后的变量值只要使用“this变量名”就行了,不需要使用getter,你不妨试试看。
类的构造函数在类对象初始化的时候被自动调用,并不一定在new的时候才会被调用,因为new运算符会自动调用类的警告函数,如果类之间存在继承关系,则先调用父类构造,再调用子类构造。
而析构函数则在类对象被销毁,或者说生命期结束的时候被调用,如果类之间存在继续关系,则先调用子类析构函数,再调用父类析构函数。在使用delete运算符释放内存时,会自动调用析构函数。可以看下我下面写的示例代码:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#include <iostream>
using namespace std;
class MyClass
{
public:
MyClass(int iFlag)//构造函数,会在对象初始化的时候被自动调用
{
m_Flag = iFlag;
cout<<"The "<<iFlag<<" Constructor called"<<endl;
}
~MyClass()//析构函数,会在对象被销毁的时候被调用
{
cout<<"The "<<m_Flag<<" Destructor called"<<endl;
}
protected:
private:
int m_Flag;//类对象标记
};
以上就是关于java程序中调用在类的方法中修改的数据全部的内容,包括:java程序中调用在类的方法中修改的数据、创建一个新对象时,程序自动调用、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)