public void print1() {
System.out.println("O valor e "+x);
}
void print2() {
System.out.println("O valor e "+x);
}
}
// classe principal
public class PrintNum {
public static void main(String args[]) {
numero num = new numero(); [color=red] //NAO ENTENDI ESTA LINHA,PQ NUMERO NUM?[/color]
Primeiro… sempre que postar código, use as tags code. Olha só como fica mais fácil a leitura:
//classe de numero
class Numero {
double x = 1;
public void print1() {
System.out.println("O valor e " + x);
}
void print2() {
System.out.println("O valor e " + x);
}
}
// classe principal
public class PrintNum {
public static void main(String args[]) {
Numero num = new Numero(); // a variavel num (que é do tipo Numero) recebe um novo objeto do tipo Numero
num.print1(); // correto
num.print2(); // ilegal
}
}
Segundo, criar uma classe cuja primeira letra seja minúscula, é uma heresia. Vc pode fazer mas vai ser excomungada por isto. Então a classe numero deveria se Numero.
Quanto a sua dúvida, new é o operador que instancia o objeto.
Quando você está usando “class Numero …” está apenas criando a classe numero, neste momento, vc não tem uma instância de objeto, só a classe. E classe é apenas a definição de como funcionarão os objetos que serão sua instância.
Imagine classe como algo abstrato, uma definição de algo. e Instância de Objeto como algo concreto que passa a ter existência, não é mais apenas uma definição.