看了你的大概意思,理解上是可以的。
函数里的theAppm_pCurrentWinApp返回的是什么? 是theApp自己还是基类的对象?
它返回的就是theApp的,也就是派生类对象的地址。
其实派生类对象中就有基类部分。
那么基类构造函数里的this是基类的临时对象还是派生类的对象theApp,是派生类对象的地址指针this,不是基类的。调用基类的构造函数,就是对派生类继承基类的部分的数据进行赋值。
java中如何实现构造方法的调用
class A {
public A(){}
public A(String a亥{}
public A(String a,String b){
this();
}
public A(String a,String b,String c){
this(a,b);
}
不知道你是不是想问的是这个。构造方法调用构造方法的话,可以采用“this”关键字来实现。
}
c++在主函数里,怎么调用构造函数和成员函数
如果你要构造一个自定义类的对象时,可以使用“类型构造 *** 作符”。这将导致编译器为你调用构造函数。
比如你写了一个类,叫BaseItem显然你可以这样定义一个BaseItem对象:
BaseItem aItem; 调用默认构造函数;
你还可以这样定义一个BaseItem对象:
BaseItem aItem = BaseItem(); 调用默认构造函数。这里"()"表示“类型构造 *** 作符”,
用来实例化一个对象
假如你的构攻函数接受一个string对象作为参数,你还可以这样定义BaseItem:
BaseItem aItem("This is a base item"); 这会使编译器为你调用相应的构造函数。
ok,上面的都明白了嘛?下面再开始讲类的构造函数和成员函数有什么区别。
(非静态)成员函数是通过对象/指向对象的指针/指向对象的引用来调用的。你只能通过这3种方式来调用一个成员函数。那么很显然,实质上无论如何要调用成员函数都必须通过对象。
比如BaseItem里面有一个成员函数叫memfunc,那么你可以这样调用它:
aItemmemfunc(parameters);
而构造函数却是用来构造对象的。在对象还没形成之前,你怎么能够通过对象去调用函数?所以你无法通过对象去调用构造函数。
java中怎么在普通方法中调用构造方法
直接new 比如说,我new 一个时间的Date(); 那里面是可以传好多种的类型参数,那都是它的构造方法。
5在一个构造方法内可以调用另一个构造方法吗》如果可以,如何调用?
可以调用的,如果是调用本类中直接使用this关键字如:
this(); 就表示调用无参构造方法
this("bobo"); 就表示调用带一个String类型的构造方法
如果调用父类的构造方法使用super关键字,用法和this相同
构造方法可以调用本类的其他方法吗
可以的,它可以调用本类的私有属性,那为什么不可以调用本类的其它方法呢?而且试过了,的确可以调用。
public class Person {
private String name = "aa";
public Person(){
setName("dsd");
}
public void setName(String name) {
thisname = name;
}
public static void main(String args[]){
Person p=new Person();
Systemoutprintln(pgetName());
}
}
构造方法如何调用构造方法
在构造方法的第一行用 this(); 调用其他的构造方法(根据参数)
java中构造函数之间的调用是什么意思
来自新浪微博,给你详细的说明一下this
的用法。
Java关键字this只能用于方法方法体内。当一个对象创建后,Java虚拟机(JVM)就会给这个对象分配一个引用自身的指针,这个指针的名字就是 this。因此,this只能在类中的非静态方法中使用,静态方法和静态的代码块中绝对不能出现this,这在“Java关键字static、final 使用总结”一文中给出了明确解释。并且this只和特定的对象关联,而不和类关联,同一个类的不同对象有不同的this。
package test;
public class ThisTest {
private int i=0;
第一个构造器:有一个int型形参
ThisTest(int i){
thisi=i+1;此时this表示引用成员变量i,而非函数参数i
Systemoutprintln("Int constructor i——thisi: "+i+"——"+thisi);
Systemoutprintln("i-1:"+(i-1)+"thisi+1:"+(thisi+1));
从两个输出结果充分证明了i和thisi是不一样的!
}
第二个构造器:有一个String型形参
ThisTest(String s){
Systemoutprintln("String constructor: "+s);
}
第三个构造器:有一个int型形参和一个String型形参
ThisTest(int i,String s){
this(s);this调用第二个构造器
this(i);
thisi=i++;this以引用该类的成员变量
Systemoutprintln("Int constructor: "+i+"/n"+"String constructor: "+s);
}
public ThisTest increment(){
thisi++;
return this;返回的是当前的对象,该对象属于(ThisTest)
}
public static void main(String[] args){
ThisTest tt0=new ThisTest(10);
ThisTest tt1=new ThisTest("ok");
ThisTest tt2=new ThisTest(20,"ok again!");
Systemoutprintln(tt0increment()increment()increment()i);
tt0increment()返回一个在tt0基础上i++的T>>
一个内部类中如何调用构造方法
构造方式只有在new对象的时候被调用。它是无法用对象去调用的!穿 也就是说你想在内部类实现外部类或者的构造方法被构造,呢只有创建该类的对象了。
在Java中如何在主函数中调用一个类的构造函数
是的 如果你有一个类的名字叫Name:则
Name o = new Name();调用空参的构造函数
Name o = new Name("aa");调用需要传回一个字符参数的构造函数,当然你得在Name类中定义这样一个构造函数
java里属性的调用用到了构造方法,那么方法的调用用到构造方法没有 如果用到了那是怎么显示的? 100分
构造方法是创建对象时用的,调用属性和方法是用对象调用的,你的说法我看不懂,“java里属性的调用用到了构造方法”是什么意思
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)