あと、不明な点が・・・

struct person{
private int age;
public person(int x){
age=x;
}
}

こんなので、外部から
person p = new person();
クラスだったら引数0個のコンストラクタはありませんとかなるけど
structだとperson(int)しかないのにperson()ができちゃう理由を教えて。