Cadeia de herança e Construtor da classe base - Curso Programação Completo C# - Aula 35

แชร์
ฝัง
  • เผยแพร่เมื่อ 18 ธ.ค. 2024

ความคิดเห็น • 33

  • @samuelfernandessilva5149
    @samuelfernandessilva5149 7 หลายเดือนก่อน +3

    Que curso sensacional! Apredendo tudo do zero com esse professor. Só gratidão pelo trabalho dele. Você é o cara, Bruno!

  • @manupriolli
    @manupriolli 2 หลายเดือนก่อน +2

    Nao sei se é porque ja estou cansada, mas achei essa aula um pouco confusa. (Só estou comentando para que se outras pessoas acharam o mesmo, nao se desmotivarem) Tá longe de ser um defeito, o curso é top de todo jeito!
    Obrigada Fessor pelo conteudo, vc nos salva a cada curso.

  • @heliomotta7238
    @heliomotta7238 10 หลายเดือนก่อน +2

    Que aula top! Muito obrigado!!

  • @marioluiz1494
    @marioluiz1494 ปีที่แล้ว +1

    Muito obrigado pelas aulas, mestre!
    Ensinar vai muito além de saber, e vc nos mostra isso. Ensina de forma simples. Um grande profissional.

  • @Igor-bx4qr
    @Igor-bx4qr 3 ปีที่แล้ว +17

    Codiguim na mao
    using System;
    namespace Aula35CadeiaHeranca
    {
    class Veiculo
    {
    public int velMax;
    private int rodas;
    private bool ligado;
    public Veiculo(int rodas)
    {
    this.rodas = rodas;
    }
    public void ligar()
    {
    ligado = true;
    }
    public void desligar()
    {
    ligado = false;
    }
    public string getLigado()
    {
    return (ligado?"sim":"nao");// operador ternario
    /* if(ligado)
    {
    return "sim";
    }
    else
    {
    return "nao";
    }*/
    }
    public int getRodas()
    {
    return rodas;
    }
    public void setRodas(int rodas)
    {
    this.rodas = rodas;
    }
    }
    class Carro:Veiculo
    {
    public string nome;
    public string cor;

    public Carro(String nome,string cor):base(4)
    {
    desligar();
    velMax = 120;
    this.nome = nome;
    this.cor = cor;
    }
    }
    class CarroCombate:Carro
    {
    public int municao;
    public CarroCombate():base("tank de guerra","verde")
    {
    municao = 100;
    setRodas(6);
    velMax = 100;
    }
    }
    class Program
    {
    static void Main(string[] args)
    {
    Carro c1 = new Carro("s10","prata");
    c1.ligar();
    Console.WriteLine("Cor do veiculo...................{0}",c1.cor);
    Console.WriteLine("Nome do veiculo..................{0}",c1.nome);
    Console.WriteLine("Quantidade de rodas do veiculo...{0}",c1.getRodas());
    Console.WriteLine("Velocidade maxima do veiculo.....{0}",c1.velMax);
    Console.WriteLine("O veiculo está ligado??..........{0}",c1.getLigado());
    Console.WriteLine("-------------------------------------------");
    CarroCombate c2 = new CarroCombate();
    Console.WriteLine("Cor do veiculo...................{0}",c2.cor);
    Console.WriteLine("Nome do veiculo..................{0}",c2.nome);
    Console.WriteLine("Quantidade de rodas do veiculo...{0}",c2.getRodas());
    Console.WriteLine("Velocidade maxima do veiculo.....{0}",c2.velMax);
    Console.WriteLine("O veiculo está ligado??..........{0}",c2.getLigado());


    }
    }
    }

  • @Rosa_angela93
    @Rosa_angela93 2 ปีที่แล้ว +2

    ótimo!

  • @OsvaldoMondadori
    @OsvaldoMondadori 3 ปีที่แล้ว +5

    Kkkkk, monição, Professor, me ajuda ai Kkkk
    Está perdoado pois o foco do curso em si é excelente !!!

    • @cfbcursos
      @cfbcursos  3 ปีที่แล้ว +3

      kkkkkkkk, acontece

    • @pcatubaaula4136
      @pcatubaaula4136 3 ปีที่แล้ว +1

      @@cfbcursos segundo curso que tu confunde a msm palavra

  • @maiconviana840
    @maiconviana840 2 ปีที่แล้ว

    Muito obrigado pelas aulas, professor!

  • @BaaknIgna
    @BaaknIgna 3 ปีที่แล้ว +1

    Grande aula professor !

  • @bartsilva5513
    @bartsilva5513 2 ปีที่แล้ว +1

    já na classe carrodeCombate eu fucei nas aulas anteriores e fui testando
    e cheguei nisso....
    // classe Derivada de: Carro

  • @marcoscoller
    @marcoscoller 5 ปีที่แล้ว

    Esperando as aulas de unity

  • @dudu88games
    @dudu88games 5 ปีที่แล้ว +6

    Fessor Bruno, somos de exatas... mas tem um erro de gramática ai... Kkkkk
    Monição = aviso judiciário de um bispo.
    Munição = conjunto de balas, projéteis, cartuchos, etc.

    • @cfbcursos
      @cfbcursos  5 ปีที่แล้ว +2

      Exatamente, ķkkkk

    • @pauloaeuaeu8182
      @pauloaeuaeu8182 4 ปีที่แล้ว +2

      Monicao é uma mônica grande e masculina XD.
      Brincadeira!

    • @luizluiz5337
      @luizluiz5337 4 ปีที่แล้ว +1

      Somo

    • @luizluiz5337
      @luizluiz5337 4 ปีที่แล้ว

      @@pauloaeuaeu8182 a galera vai querer te cancelar

    • @pauloaeuaeu8182
      @pauloaeuaeu8182 4 ปีที่แล้ว

      @@luizluiz5337 kkk

  • @vagnercosta3325
    @vagnercosta3325 5 ปีที่แล้ว

    e tem alguma previsão de qdo vai dar aulas de android studio??? ou aguma plataforma para aplicativos mobile???

  • @jokerphoenix3788
    @jokerphoenix3788 9 หลายเดือนก่อน +1

    essa aula em especifico a explicação ficou meio confusa

  • @vagnercosta3325
    @vagnercosta3325 5 ปีที่แล้ว

    fala Grande mestre boa tarde, professor já fiz as aulas de javascript, php e agora aprendendo c# , qual a linguagem indicada p aplicativos mobile??? qual a linguagem o sr indica p eu estudar? ou eu consigo fazer aplicativos com a mesma eficiencia em javascript ou c c#?

  • @bartsilva5513
    @bartsilva5513 2 ปีที่แล้ว

    rsrsrs no minuto 4.02 quando o professor digitou o 4 em :base(4) eu pensei ha ha já sei!!!! tenho que passar os três parâmetros e por ele ali no locar do 4
    ///////////
    public Carro(string nome, string cor, int rodas):base(rodas){ // método construtor
    desligar();
    velMax=120;
    this.nome = nome;
    this.cor=cor;
    //this.rodas = rodas; não precisa poque vai direto na classe base
    na criação do carro
    Carro c1=new Carro("deDeus","Vermelho",4);

  • @tristezaelagrimasr
    @tristezaelagrimasr 7 หลายเดือนก่อน

    Eu fiz um pouco diferente, acabei criando métodos infos nas classes, bom para estimular o uso do virtual e override
    using System;
    class Veiculo{
    public int velMax;
    private bool ligado;
    private int rodas;
    public void Ligar(){
    ligado = true;
    }
    public void Desligar(){
    ligado = false;
    }
    public string getLigado(){
    return(ligado?"Ligado":"Desligado");
    }
    public Veiculo(int r){
    rodas = r;
    if (rodas < 0){
    rodas = 0;
    } else if (rodas > 20){
    rodas = 20;
    Console.WriteLine("Não suportamos mais que 20 rodas.");
    }
    }
    public int GetRodas(){
    return rodas;
    }
    }
    class Carro:Veiculo{
    string nome;
    string cor;
    public Carro(string n, string c):base(4){
    Desligar();
    velMax = 120;
    nome = n;
    cor = c;
    }
    public virtual void Info(){ /*Necessário usar o virtual nesse info, já que cada classe derivada de carro pode precisar de um info diferente*/
    Console.WriteLine("Cor {0}", cor);
    Console.WriteLine("Velocidade máxima {0}", velMax);
    Console.WriteLine("Nome {0}", nome);
    Console.WriteLine("Tem {0} rodas", GetRodas());
    Console.WriteLine("{0}
    ", getLigado());
    }
    public string getCor(){
    return cor;
    }
    public string getNome(){
    return nome;
    }
    }
    class CarroCombate:Carro{
    private bool blindagem;
    public int quantorr;
    public int rodas;
    public CarroCombate(bool b, int t):base("Demonhao", "Preto"){
    Veiculo veiculo = new Veiculo(4);
    rodas = veiculo.GetRodas();
    velMax = 220;
    blindagem = b;
    quantorr = t;
    }
    public string getBlindagem(){
    return(blindagem?"Blindado":"Não é blindado");
    }
    public override void Info(){
    Console.WriteLine("Cor {0}", getCor());
    Console.WriteLine("Velocidade máxima {0}", velMax);
    Console.WriteLine("Nome {0}", getNome());
    Console.WriteLine("Tem {0} rodas", GetRodas());
    Console.WriteLine("{0}", getLigado());
    Console.WriteLine("{0}", getBlindagem());
    Console.WriteLine("{0} Torretas
    ", quantorr);
    }
    }
    class Princ{
    static void Main(){
    Carro c1 = new Carro("Desgraça", "Cinza");
    c1.Desligar();
    c1.Info();
    CarroCombate caray = new CarroCombate(true, 4);
    caray.Ligar();
    caray.Info();
    }
    }

  • @emagrecasaudavelefeliz3393
    @emagrecasaudavelefeliz3393 3 ปีที่แล้ว

    Alguem ai tem o código da aula??

  • @primata83
    @primata83 2 ปีที่แล้ว

    visto

  • @tigreouro
    @tigreouro 3 ปีที่แล้ว

    Eu não entendi o seguinte, a palavra "base" é um código ? ou foi meio que um termo criado para que pudesse ser chamado em CarrosCombate?

    • @maiconsansao1
      @maiconsansao1 3 ปีที่แล้ว +2

      base e uma palavra chave do C#, citando a documentação "A palavra-chave base é usada para acessar membros de classe base de dentro de uma classe derivada" link caso esteja interessado: docs.microsoft.com/pt-br/dotnet/csharp/language-reference/keywords/base

  • @arthurtgam33
    @arthurtgam33 3 ปีที่แล้ว +1

    Sorte que tu escolheu Exatas kkkkkkkkkkkkkkkkkk

    • @cfbcursos
      @cfbcursos  3 ปีที่แล้ว

      Kkkkkkkk, pq?

  • @iota0y
    @iota0y 5 ปีที่แล้ว

    moni
    ção

  • @TheMaceloLaian
    @TheMaceloLaian 4 ปีที่แล้ว +3

    Espero que nas aulas seguintes possa melhorar o constructor das SubClasses. Porque do jeito que foi mostrado ai, ta muito estranho.
    Na "instaciação" de um objeto passando argumentos para o construtor por exemplo:
    Carro carroDeMao = new Carro(argumento1, argumento2, argumento3)...
    Esses argumentos deveriam ser transparentes, a classe Carro deveria se encarregar de levar esses argumentos até o constructor da classe Pai.