建议34:构造函数尽量简化


构造函数用来做什么?

概念性的词汇就老感觉自己说不清楚,只好用自己的理解来表达。

什么是构造函数?
现在个人理解是,它是一个方法,通过这个方法可以构建一个类的实例。
这就是它与普通方法的区别。
构造方法特殊性有:
第一:构造方法必须与类名一致,并且没有返回值。
第二:构造方法可以重载,当类中没有写构造方法时,系统会默认一个无参数构造方法。
第三: 构造方法不能直接被调用,只能通过 new +类名 来创建一个类的实例。

构造函数的作用是什么?
完成对象的初始化工作,它能够把定义对象时的参数传给对象的域。
因此没必要在构造函数里面进行带有逻辑的数据处理,简单值传递就OK了,当然多几个值传递也没事,一眼就能看懂就行,比如:
public AudioTrack(int streamType, int sampleRateInHz, int channelConfig, int audioFormat,
            int bufferSizeInBytes, int mode)
    throws IllegalArgumentException {
        this(streamType, sampleRateInHz, channelConfig, audioFormat,
                bufferSizeInBytes, mode, 0);
    }

在这个构造函数里面它添加了异常处理。不过它还是一目了然,没有逻辑处理。
总言之,

构造函数要尽量简单,一般进行值传递就OK了。

转载于:https://my.oschina.net/thinkerfan/blog/111296

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值