Instancie um objeto em Java
Em Java, um objeto é referido como uma instância de uma classe. Por exemplo, vamos supor uma classe chamada car
, então SportsCar
, SedanCar
, StationWagon
, etc., podem ser considerados os objetos desta classe.
Neste tutorial, discutiremos como instanciar objetos em Java.
Usando a palavra-chave new
, podemos criar instâncias de uma classe em Java. Lembre-se de que não instanciamos métodos em Java, pois os objetos são instâncias de classes e não métodos. Um método é apenas um comportamento que a classe possui.
Ao criar um objeto de uma classe, podemos acessar seus métodos públicos por meio de outra classe. Como no código a seguir, criamos uma instância de uma segunda classe na primeira classe e, em seguida, usamos os métodos da segunda classe na primeira classe.
// creating a class named first
public class First {
public static void main(String[] args) {
Second myTest = new Second(1, 2); // instantiating an object of class second
int sum = myTest.sum(); // using the method sum from class second
System.out.println(sum);
}
}
// creating a class named second
class Second {
int a;
int b;
Second(int a, int b) {
this.a = a;
this.b = b;
}
public int sum() {
return a + b;
}
}
Produção:
3
Se quisermos acessar os métodos de uma classe em outro método da mesma classe, é desnecessário instanciar um objeto se o método for declarado static
.
Por exemplo,
public class Testing {
private static int sample(int a, int b) {
return a + b;
}
public static void main(String[] args) {
int c = sample(1, 2); // method called
System.out.println(c);
}
}
Produção:
3
No exemplo acima, podemos chamar o método sample()
, pois ambos os métodos são da mesma classe e sample()
é declarado static
, portanto, nenhum objeto é necessário.
Mas ainda podemos realizar a instanciação do objeto se ambos os métodos forem da mesma classe, conforme ilustrado a seguir. Isso é feito se o método não for declarado static
.
Veja o código abaixo.
public class Testing {
private int Sample() {
int a = 1;
int b = 2;
int c = a + b;
return c;
}
public static void main(String[] args) {
Testing myTest = new Testing();
int result = myTest.Sample();
System.out.println(result);
}
}
Produção:
3