logo

Instanciação em Java

Instanciação é uma palavra imensa para definir um conceito universal e direto em programação Java, criando novas instâncias de objetos para ser usado em um programa. Nesta seção, discutiremos o que é instanciação em Java, como instanciar uma classe, e quais são as maneiras de criar instâncias ou objetos da classe?

Instanciação em Java

Instanciação

Em Java , instanciação pretendo ligar para o construtor de uma classe que cria um instância ou objeto do tipo dessa classe. Em outras palavras, criar um objeto da classe é chamado instanciação . Ocupa a memória inicial do objeto e retorna uma referência. Uma instanciação de objeto em Java fornece o modelo para a classe.

O que é um objeto?

  • É uma entidade de tempo de execução.
  • Ele contém o projeto da classe.
  • Podemos criar qualquer número de objetos de uma classe.
  • Pode representar dados definidos pelo usuário como Vetor , Listas, etc.

Sintaxe para instanciação

 ClassName objName = new ClassName(); 

Ou

 ClassName cn; cn= new ClassName; 

Vamos entender as afirmações acima por meio de um exemplo.

Criando Instâncias

Existem duas maneiras de criar instâncias:

Usando a nova palavra-chave

Java fornece o novo palavra-chave para instanciar uma classe.

Definindo uma Referência

 //defines a reference (variable) that can hold an object of the DemoClass DemoClass dc; 

Instanciação

programação java números primos
 DemoClass dc = new DemoClass(); //instantiation 

Também podemos instanciar a classe acima da seguinte maneira, se definirmos uma variável de referência.

 //creates a DemoClass object (instantiate) //new keyword allocates memory space for the newly created object dc = new DemoClass(); 

Observamos que quando usamos o novo palavra-chave seguida pelo nome da classe, ela cria uma instância ou objeto dessa classe. Criando um construtor da classe também é conhecido como instanciação .

Nota: Se quisermos invocar os métodos da classe interna local, devemos instanciar essa classe.

Usando o método estático de fábrica

Outra maneira de instanciar uma classe é chamando um estático método de fábrica . Uma classe pode fornecer um método de fábrica estático público que nada mais é do que um método estático que retorna um instância da classe. Lembre-se sempre de que não é o mesmo que o padrão de método de fábrica .

Podemos usá-lo em vez do construtor. Fornecer um método de fábrica estático em vez de um construtor tem prós e contras. O primeiro A vantagem é que os métodos estáticos de fábrica também possuem nomes, diferentemente dos construtores. O segundo A vantagem é que, diferentemente dos construtores, eles não são obrigados a criar um novo objeto cada vez que são invocados. O terceiro A vantagem é que, diferentemente dos construtores, eles podem retornar um objeto de qualquer subtipo de seu tipo de retorno. O quarto A vantagem é que eles reduzem o detalhamento da criação de instâncias de tipo parametrizado.

A desvantagem é que fornecer apenas métodos de fábrica estáticos é que classes sem construtores públicos ou protegidos não podem ser subclassificadas. Outra desvantagem é que eles não são facilmente distinguíveis de outros métodos estáticos.

Vejamos um exemplo do método de fábrica estático.

 public final class Furniture { //.. private int price; private String description; private Furniture (int price, String description) { this.price = price; this.description = description; } public static Furniture getNewFurniture (int price, String description) { return new Furniture (price, description); } //.. } 

Vamos ver algumas questões importantes que podem clicar na mente.

Podemos instanciar uma classe abstrata?

Não, não podemos instanciar classes abstratas . Mas eles podem ser subclassificados. Quando uma classe abstrata é subclassificada, ela geralmente fornece implementações para todas as classes abstratas. métodos em sua classe pai.

data java para string

Qual é a diferença entre instanciação e inicialização?

Instanciação e inicialização são conceitos completamente diferentes na programação Java.

Inicialização: Atribuir um valor a uma variável é chamado inicialização . Por exemplo, custo = 100 . Ele define o valor inicial do custo variável como 100.

Instanciação: A criação de um objeto usando a palavra-chave new é chamada de instanciação. Por exemplo, Carro ca = carro novo(). Ele cria uma instância da classe Car.