Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Necessidade da palavra reservada "this"

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;
        }

    }    
}
1 resposta
solução!

Sim, escrever o this mesmo quando facultativo torna o código mais legível. quando vemos o this , assim que vimmos o this em um código estamos nos referindo ao atributo da classe