No livro use a cabeça java tem uma observação que diz:
"Na verdade, as variáveis de instância têm um valor padrão. 0 ou 0.0 para variáveis primitivas numéricas, falso para as booleanas e nulo para as referências."
ai fiz esse exemplo do livro:public class Duck {
int size;
public Duck(int duckSize) {
System.out.println("Quack");
size = duckSize;
System.out.println("O tamanho eh igual a " + size);
}
}
public class UseADuck {
public static void main (String[] args) {
Duck d = new Duck(42);
}
}
UseADuck.java:4: error: constructor Duck in class Duck cannot be applied to give
n types;
Duck d = new Duck();
^
required: int
found: no arguments
reason: actual and formal argument lists differ in length
1 error
ai pergunto o valor padrão de int não é 0? ou o erro é por causa de outra coisa?