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 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 o novo Palavra-chave
- Usando Método de fábrica estático
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.