Constructor or not constructor?

Q. Constructor or not constructor? Please explain why the output of the following code is null?
public class My {
    String s;
    public void My(){
        s = "Constructor";
}
    public void go() {
        System.out.println(s);
    }
    public static void main(String args[]) {
        My m = new My();
        m.go();
    }
}
//output : null
A:
public void My() is not a constructor. The default constructor is called. s is still null by default.
Constructor is not supposed to have a return type, even a void type. If it has, then it is not a constructor, but a method which happens to have the same name as the class name. This is a tricky question just for testing your Java knowledge. Using class name as your method name is not considered as good code practice at work!
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值