Vou usar como exemplo a aula "04 - Mais sobre herança", do curso "C#: usando herança e implementando interfaces", mas a mesma situação ocorre em vários outros momentos do curso. No minuto 6:38, na hora de manipular a propriedade da classe "Diretor"(Senha), o André usa a palavra reservada "this" antes de chamar a propriedade. Em algumas buscas que eu fiz, encontrei explicações dizendo que o "this" deve ser usado apenas quando existe o mesmo nome da "propriedade / parâmetro" dentro do método e dentro da classe, para que o compilador possa identificar qual é a referência que ele deve considerar na hora da execução do código. Também encontrei a explicação de que no caso de não haver 2 itens com o mesmo nome a utilização do "this"é opcional e que isso não afeta a lógica do programa. Mas minha dúvida é, ok ele é opcional, mas eu tenho algum benefício em utilizar o "this" quando ele não é obrigatório? isso é uma boa prática? se sim, por que?
using System;
using System.Collections.Generic;
using System.Linq;
using System.Security.Cryptography.X509Certificates;
using System.Text;
using System.Threading.Tasks;
namespace bytebank_ADM.Funcionarios
{
public class Diretor:Funcionario
{
public Diretor(string cpf) : base(cpf, 5000)
{
}
public override void AumentarSalario()
{
Salario *= 1.15;
}
public override double GetBonificacao()
{
return Salario * 0.50;
}
public string Senha { get; set; }
public bool Autenticar(string senha)
{
return this.Senha == senha;
}
}
}