JAVA 中的有参构造方法里面的参数为啥不能在括号里面直接赋初值

JAVA 中的有参构造方法里面的参数为什么不能在括号里面直接赋初值
比如下面这样写为什么是错的?

class test(){
    public test(int n=0){
         n=5;
    }
}

------解决思路----------------------
无论是构造方法,或者其他方法,传值都不应该是具体数值;

因为方法就是为了接收可变的参数,然后进行计算,这这就是面向对象的封装思想。你非要传一个固定数值进去,为什么还要定义这个方法?直接给参数赋值就行了。

为什么这么编译?因为这才是最合理的。脱裤子放屁这种事太多余。