java中构造器内部调用构造器实例详解

网友投稿 313 2022-12-07


java中构造器内部调用构造器实例详解

可能为一个类写了多个构造器,有时可能想在一个构造器里面调用另外一个构造器,为了减少代码的重复,可用this关键字做到这一点。

public class Flower {

private String string;

private int age;

public Flower() {

// 先调用public Flower(String string, int age)

this("leon", 120);

// 先调用public Flower(String string, int age)

}

public Flower(String string) {

this(string, 12);

}

public Flower(String string, int age) {

this.string = stringeiCPjeiCPj;

this.age = age;

System.out.println("姓名:" + this.string + " 年龄: " + this.age);

}

public static void main(String[] args) {

Flower flower = new Flower();

Flower flower1 = new Flower("leon");

Flower flower2 = new Flower("leon", 12);

}

}

其实可以从结果看见,这其实可普通的函数调用没什么区别,只不过是用了this这个关键字。

内容补充:

构造函数的作用

这个示例项目中的 DiceRoller 类表示一个虚拟骰子工厂:当它被调用时,它创建一个虚拟骰子,然后进行“滚动”。然而,通过编写一个自定义构造器,你可以让掷骰子的应用程序询问你希望模拟哪种类型的骰子。

大部分代码都是一样的,除了构造器接受一个表示面数的数字参数。这个数字还不存在,但稍后将创建它。

import java.util.Random;

public class DiceRoller {

private int dice;

private int roll;

private Random rand = new Random();

// constructor

public DiceRoller(int sides) {

dice = sides;

}

模拟滚动的函数保持不变:

public void Roller() {

roll = rand.nextInt(dice);

roll += 1;

System.out.println (roll);

}

代码的主要部分提供运行应用程序时提供的任何参数。这的确会是一个复杂的应用程序,你需要仔细解析参数并检查意外结果,但对于这个例子,唯一的预防措施是将参数字符串转换成整数类型。


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Java四种权限修饰符知识点详解
下一篇:Java实现斗地主最简代码实例
相关文章

 发表评论

暂时没有评论,来抢沙发吧~