永发信息网

java中的构造方法是用来干嘛的?怎么就想到要用构造方法?我写的时候想不到要写

答案:6  悬赏:10  手机版
解决时间 2021-04-06 08:55
java中的构造方法是用来干嘛的?怎么就想到要用构造方法?我写的时候想不到要写
最佳答案
构造方法就是用来构造一个对象出来的。
一个对象通常有很多属性,这些属性通常是定义为private访问级别的,通常定义了public 的GET SET方法,操作这些属性。
当new 一个无参数的对象,即调用默认构造方法,这些属性的值一般就是为空的。
当调用带参数的构造方法的时候 一般我们是给一些属性赋值。
所以当你想初始化NEW出来的对象有些值的时候就去调用你自己定义的带参数构造方法。
其实不难理解 吧 亲再好好地去学习一下!
全部回答
你不用构造器那你怎么给类的属性赋值?通过set()方法?这样也可以的。不过有些资源是需要在类的实例化的同时就已经加载了,那么此时就需要构造方法了,在构造方法里进行一下必要的资源创建和获取操作。用不用,是根据你的需求来定的。
想不到写,说明你初始化类中定义的变量的时候,没有用到类外的值,所以你的类写好后,声明类对象的时候参数表为空,如myClass a=new myClass();
构造方法的作用:创建对象时进行初始化(记住这点你就该知道什么时候该写什么时候不该写了吧)
如果没有定义类,系统会提供一个默认的构造器,该构造器没有参数,如:
public Test(){}
构造器是为新建类服务的,比如一个user类,里面有id,name,score三个属性,如果不写构造器,那么系统提供默认的,public user(){},这时候你在类外想要使用user这个对象,那你必须要实例化,user user=new user();其中new user()括号里没有参数,说明你使用的无参构造器也就是默认构造器来新建的user实例,现在你如果想获取这个user的id并给id赋值为1,那只有通过user.setId(1);但是如果你写了public user(id,name){this.id=id;this.name=name;},那么你就可以直接通过有参构造器直接给一个新建的user实例赋值,user user=new user(1,"baobao");这就省得麻烦了,同理你也可以新建public user(id,name,score){this.id=id;this.name=name;this.score=score;},道理和上面的一样,就是为方便实例化一个有值的user的。
注意:如果你写了有参的构造器,那么系统就不给你提供默认构造器了,如果你需要无参构造器就需要自己写一下了
当你创建了一个类,要创建该类的对象的时候,就会调用构造方法
如果你不写
它会默认给你提供一个无参构造方法的
谢谢
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
按照课文意思,解释下面文言句子中划线字的意
毛笔字写一竖要写好有什么技巧。
请问从宜昌到巫山 在哪里坐船?具体船次是几
当代有研究散曲的专家吗?
什么化学溶液是绿色的
梦见许多学生在举行什么活动
长春市推荐生考试体育
红掌粉掌白掌难养吗
单选题我国的太湖平原、松嫩平原、美国西部高
下段村这个地址在什么地方,我要处理点事
考了acca在西安能有多少钱月薪
红米note3断网售后怎么处理
安装multisim10后出现了这个软件HI-TECH Soft
如何用两年时间练好足球
我小时候看的一个电影:说的大概是:一个警车
推荐资讯
hellolmdanny.where are you from是什么
已知一个平行四边形的面积是28平方米,这个平
盛开造句。
阴宅甲山庚向三度半
中了圈套而了假画,该怎么解决?
关于莎士比亚的十四行诗 请问feed’st thy li
有大公司的hr吗,进来看一下
男人带关公项链好么
高斯奥特曼中哪集有谁知道武藏是高斯奥特曼
澳门五毫硬币是多少钱
手上老茧怎么去除妙招,手上的老茧怎么能快速
呼吸方面,除________等动物外,陆地生活的动
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?