1. 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){
this.i=i+1;//此时this表示引用成员变量i,而非函数参数i
System.out.println("Int constructor i——this.i: "+i+"——"+this.i);
System.out.println("i-1:"+(i-1)+"this.i+1:"+(this.i+1));
//从两个输出结果充分证明了i和this.i是不一样的!
}
// 第二个构造器:有一个String型形参
ThisTest(String s){
System.out.println("String constructor: "+s);
}
// 第三个构造器:有一个int型形参和一个String型形参
ThisTest(int i,String s){
this(s);//this调用第二个构造器
//this(i);

this.i=i++;//this以引用该类的成员变量
System.out.println("Int constructor: "+i+"/n"+"String constructor: "+s);
}
public ThisTest increment(){
this.i++;
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!");

System.out.println(tt0.increment().increment().increment().i);
//tt0.increment()返回一个在tt0基础上i++的ThisTest对象,
//接着又返回在上面返回的对象基础上i++的ThisTest对象!
}
}

运行结果:

Int constructor i——this.i: 10——11
String constructor: ok
String constructor: ok again!
Int constructor: 21
String constructor: ok again!
14

细节问题注释已经写的比较清楚了,这里不在赘述,只是总结一下,其实this主要要三种用法:
1、表示对当前对象的引用!
2、表示用类的成员变量,而非函数参数,注意在函数参数和成员变量同名是进行区分!其实这是第一种用法的特例,比较常用,所以那出来强调一下。
3、用于在构造方法中引用满足指定参数类型的构造器(其实也就是构造方法)。但是这里必须非常注意:只能引用一个构造方法且必须位于开始!
还有就是注意:this不能用在static方法中!所以甚至有人给static方法的定义就是:没有this的方法!虽然夸张,但是却充分说明this不能在static方法中使用!

说明在什么情况下需要用到this:
第一、通过this调用另一个构造方法,用发是this(参数列表),这个仅仅在类的构造方法中,别的地方不能这么用。
第二、函数参数或者函数中的局部变量和成员变量同名的情况下,成员变量被屏蔽,此时要访问成员变量则需要用“this.成员变量名”的方式来引用成员变量。当然,在没有同名的情况下,可以直接用成员变量的名字,而不用this,用了也不为错,呵呵。
第三、在函数中,需要引用该函所属类的当前对象时候,直接用this。
其实这些用法总结都是从对“this是指向对象本身的一个指针”这句话的更深入的理解而来的,死记不然容易忘记而且容易搞错,要理解!

2. 在Java中如何在主函数中调用一个类的构造函数

如果有一个类的名字叫Name:则
Name o = new Name();//调用空参的构造函数
Name o = new Name("aa");//调用需要传回一个字符参数的构造函数,当然得在Name类中定义这样一个构造函数。
构造函数:构造函数(constructor)是一种特殊的方法 。主要用来在创建对象时初始化对象, 即为对象成员变量赋初始值,总与new运算符一起使用在创建对象的语句中 。特别的一个类可以有多个构造函数 ,可根据其参数个数的不同或参数类型的不同来区分它们 即构造函数的重载。构造函数的功能主要用于在类的对象创建时定义初始化的状态。

3. JAVA中使用什么关键字可以调用构造函数 THIS

1.java里面没有函数的概念, 习惯叫方法
2.如果你调用本类的构造方版法
a) 直接调权用
b) this调用
3.如果你调用父类的构造方法
a),如果本类未override父类的构造方法
可以直接调用
b),如果本类override父类的构造方法
用super调用.

4. java构造函数中调用构造函数的问题

使用this的话创建了1个对象,构造方法返回的对象
使用new的话创建了2个对象,多了一个匿名的对象

使用new的时候 传递过来的3个参数给了匿名对象,而不是真正得到的对象

5. java中同一个包内一个类调用另一个类中构造函数的问题

你需要用javac的带包编译

javac -d . DBConnect.java
javac -d . UserUtil.java

你会发现在目录中多了个bean文件夹,里面有编译好的两个类

d后面的 点 是指生成包的文件目录(. 代表当前目录)

6. Java程序 构造函数并调用方法

学生吧!
呵呵 记得好好努力!

7. 在JAVA中构造函数的用途和调用时机是什么

说到构造函数,首先你要清楚函数有无参构造函数和有参的构造函数
函数用途1:
比如说一回个Class类中有很答多属性,你在测试类中要用到时,如果你只有一个无参的构造函数,那么你使用这个类的并且输出类的属性值的时候,你就需要new 一个对象 然后用对象.属性 给他赋值,但是如果你有一个带参数的构造函数 那么你在调用他的时候就只需要new一下的同时就给它赋值,
Class class=new Class(“属性值1”,“属性值2”);这样就可以了!方便了很多,这样就是初始化!

8. java怎么调用带参数构造函数

1
如果在子类中调用
,那么先new
一个参数所在类型的对象a,即
A
a
=
new
A(),然后在子类中用super(a)就可以调版用父类的带权类参数构造方法。
2
如果在其他类中调用,那么也需要先new
一个参数所在类型的对象a,即
A
a=new
A();,然后new调用类的的时候把参数传进去就可以了,B
b
=
new
B(a)。

9. java中,构造函数里能调用成员方法吗

可以。
java中所有的方法都可以称之为成员方法,成员方法分为构造方法和一般的方法。在构造方法里可以调用除自身外的其他方法(注意静态方法与非静态方法的调用),但要注意防止进入死循环,即互相调用。

10. java在一个类中如何同时调用另一个类中有参的构造函数和成员函数

我觉得是不可以的。
构造函数的调用--创建对象的时候,
成员函数的调用-通过对象来调用。
时机是有先后的,我觉得不可以。
愚见,