Qual é a diferença entre substituição de método e ocultação de método?
Qual é a diferença entre substituição de método e ocultação de método?

Vídeo: Qual é a diferença entre substituição de método e ocultação de método?

Vídeo: Qual é a diferença entre substituição de método e ocultação de método?
Vídeo: difference between Method Overriding and Method Hiding | Method Overriding vs Method Hiding 2024, Abril
Anonim

No substituição de método , quando a variável de referência da classe base aponta para o objeto da classe derivada, então ela chamará o método sobrescrito no classe derivada. No método de esconder , quando a variável de referência da classe base aponta para o objeto da classe derivada, então ela chamará o método escondido no classe base.

Além disso, qual é a diferença entre substituição de método e ocultação de método em Java?

substituição de método , quando a subclasse tem o mesmo método com a mesma assinatura no subclasse. Esconder o método , quando a subclasse tem o mesmo método nome, mas diferente parâmetro. Neste caso, você não é prevalecente o pai método , mas se escondendo isto.

Em segundo lugar, o que o método está escondido em C # com o exemplo? Resposta: O ocultamento do método ocorre em herança relacionamento quando a classe base e a classe derivada têm um método com o mesmo nome. Quando criamos o objeto da classe derivada, ele ocultará o método da classe base e chamará seu próprio método e isso é chamado de ocultação de método ou ocultação de nome em C # herança.

Também sabe, por que o método de ocultação é usado?

Ele nos diz para usar a nova palavra-chave para ocultar o membro herdado. Então, usando o novo modificador na classe derivada método , isto esconde a implementação da classe base método . Isso é chamado Método Escondido . Ele permite que você forneça uma nova implementação para uma classe derivada.

O que o método está escondendo?

Esconder o método significa que a subclasse definiu uma classe método com a mesma assinatura de uma classe método na superclasse. Nesse caso, o método da superclasse está oculto pela subclasse. Isso significa que: A versão de um método que é executado NÃO será determinado pelo objeto que é usado para invocá-lo.

Recomendado: