黑马程序员技术交流社区
标题:
请问构造函数在什么情况下用
[打印本页]
作者:
hg3093483
时间:
2013-4-1 11:01
标题:
请问构造函数在什么情况下用
本帖最后由 hg3093483 于 2013-4-1 18:44 编辑
构造函数是在什么情况下用呢,感觉可有可无啊?请给小弟详细解释一下。谢谢啦。
顺便问下:我要随机一个40到100的整数,为什么不是60而要在61当中随机呢?
Random ran = new Random();
int a = ran.nextInt(
61
)+40;
作者:
邵震
时间:
2013-4-1 11:09
假设对象是游戏 构造函数就是WASD 空格 鼠标左右键的默认设置
没有也行 但是每个人安装完游戏都要自己设置一遍
作者:
王亚东
时间:
2013-4-1 11:55
构造函数是必须要有的,自己不显式写出来的话,编译器默认从父类继承一个无参构造函数。
当需要通过构造函数赋值初始化一些操作时,需要自己写带参数的构造函数,只是简单的创建对象的话,直接使用默认的就可以了,所以感觉可有可无。
第二个:ran.nextInt(61)是随机0到60.9999无穷,精确到int就是0到60,如果使用60,实际只到59
作者:
hg3093483
时间:
2013-4-1 11:57
王亚东 发表于 2013-4-1 11:55
构造函数是必须要有的,自己不显式写出来的话,编译器默认从父类继承一个无参构造函数。
当需要通过构造函 ...
谢谢,豁然开朗
作者:
whs_nk
时间:
2013-4-1 17:21
首先明确两点(1)继承的原则:子类继承父类的成员变量;子类继承父类的除构造方法之外的成员方法,换句话说,也就是子类不能继承父类的构造方法。(2)构造函数的存在,首先便是为了创建对象并进行初始化。
子类可以用super调用父类的构造函数,而当一个子类没有声明自己的构造方法时,java会默认通过调用 super调用其父类无参数的构造方法,从而子类得以创建对象。
所以,它的存在是上帝式的存在哦。。
作者:
HM周一帆
时间:
2013-4-1 17:27
本帖最后由 HM周一帆 于 2013-4-1 17:28 编辑
看看 对理解有帮助
作者:
影响力147753321
时间:
2013-4-1 17:52
构造函数在创建对象时用。用于对象的初始化。 必须有构造函数,如果没有显示的定义。编译器会悄悄地加入一个默认无参构造函数。
作者:
山西_李帅
时间:
2013-4-1 18:05
每一个类都有一个构造函数。
我们要是不写的话,会默认的从父类继承一个。
构造函数呢,有两种,一种是无参构造,一种是有参构造。
那么当你使用无参构造函数建立对象时,就需要用set/get进行赋值取值了。
那当你使用有参构造函数建立对象时,直接在建立对象时进行赋值就可以了。
//无参构造
Poker(){}
//有参构造
Poker(String color, String number){
this.color=color;
this.number=number;
}
1,Poker p = new Poker();
2, Poker p = new Poker("红色","A");
那第二种是不是使对象的初始化很方便呢!
第二个问题是:
int a = ran.nextInt(61)+40;
这里呢,ran.nextInt只能是左边取值从0开始,而右边呢是小于61的,也就是说肯定取不了61了,只能取60.
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2