Java dynamic polymorphism ✨

Поделиться
HTML-код
  • Опубликовано: 20 янв 2025

Комментарии • 130

  • @BroCodez
    @BroCodez  4 года назад +51

    ALSO KNOWN AS RUNTIME POLYMORPHISM
    //*************************************************
    import java.util.Scanner;
    public class Main {
    public static void main(String[] args) {

    //Dynamic Polymorphism

    Scanner scanner = new Scanner(System.in);
    Animal animal;

    System.out.println("What animal do you want?");
    System.out.print("(1=dog) or (2=cat): ");
    int choice = scanner.nextInt();

    if(choice==1) {
    animal = new Dog();
    animal.speak();
    }
    else if(choice==2) {
    animal = new Cat();
    animal.speak();
    }
    else {
    animal = new Animal();
    System.out.println("That choice was invalid");
    animal.speak();
    }
    }
    }
    //*************************************************
    public class Animal {
    public void speak() {
    System.out.println("animal goes *brrrr*");
    }
    }
    //*************************************************
    public class Dog extends Animal{
    @Override
    public void speak() {
    System.out.println("dog goes *bark*");
    }
    }
    //*************************************************
    public class Cat extends Animal{
    @Override
    public void speak() {
    System.out.println("cat goes *meow*");
    }
    }
    //*************************************************

    • @noisyguest5249
      @noisyguest5249 4 года назад

      Dam u wrote a whole essay of codes in the comment section

    • @AHSANALI-ev7sx
      @AHSANALI-ev7sx 4 года назад +1

      Got it ...its easy thanks cool that you post code here...bro this an amazing channel...I dint know why its underrated

    • @BroCodez
      @BroCodez  4 года назад +8

      I cheated. I copied and pasted it from my IDE lol. Don't tell anybody

    • @noisyguest5249
      @noisyguest5249 4 года назад +1

      @@BroCodez Liar!!!!!!!

    • @noah77
      @noah77 4 года назад

      @@BroCodez it's ok, you still helped

  • @meltdown6856
    @meltdown6856 4 года назад +26

    Man I just looked at ur sub count and you have Grown!! Great job with the videos!

    • @BroCodez
      @BroCodez  4 года назад +4

      thanks Melt Down!

  • @nikitamarkovski7121
    @nikitamarkovski7121 3 года назад +10

    One of the most understandable lessons on RUclips. Thank you Bro!

  • @TheSoprah
    @TheSoprah 4 года назад +10

    I played Pokémon when I was a kid
    I played WoW when I was a teenager / young adult
    I study Computer Science as an adult
    I like this channel! :-)

  • @LamNguyen-nm1fq
    @LamNguyen-nm1fq 2 года назад +5

    Love this channel! I spent a whole week trying to understand polymorphism and it was really a nightmare since I couldn't get anything from the lecture at uni. Your video really save my life. Hope that you have patreons so that I could support :3

  • @cdjosh3568
    @cdjosh3568 4 года назад +7

    Great vid, I like the video game examples, keep them coming!

  • @kemann3815
    @kemann3815 3 года назад +4

    The example at the end was great. I think i got a good idea of how it works. Thanks a lot ❤

  • @CudaV
    @CudaV 4 года назад +3

    You explained everything so well !! *subscribed*

  • @sunshine1538
    @sunshine1538 7 месяцев назад

    Thank you Bro Code. Your video helps me a lot to understand polymorphism! I've spent a few weeks catching those concepts before watching your videos. I should've found this early.❤

  • @yonatan_song
    @yonatan_song 3 года назад +1

    Great, man. I like the way the example is given. To the point

  • @omersond4891
    @omersond4891 3 года назад +1

    i liked that example with pokemon. that's what i like about this channel. examples are given of what certain methods are used for.

  • @joviksalmeron9664
    @joviksalmeron9664 4 года назад +2

    Great! You made it very understandable! Good job!

  • @iztillanurulla151
    @iztillanurulla151 Год назад

    I watched a lot of RUclips Java tutorials, You are the best, and I hope you can create more practice Task questions and solutions videos

  • @AHSANALI-ev7sx
    @AHSANALI-ev7sx 4 года назад +1

    Amazing job...love the way you explain

  • @dianamilenaarchilacordoba4632
    @dianamilenaarchilacordoba4632 4 месяца назад

    great video!!! I'm infinitely grateful for your dedication and big heart to share this knowledge with the world. Thank you soo much

  • @Dinesh0502
    @Dinesh0502 3 года назад

    Nice Example Earned a sub :)

  • @hgatl
    @hgatl 4 года назад +1

    awesome videos for beginners

  • @sinmeyyy
    @sinmeyyy 4 года назад

    Thank you bro! let's fight the algorithm :D you deserve it

  • @hananfadah
    @hananfadah 2 месяца назад

    Thank you! Big respect!!

  • @muhammedenesgokdeniz6201
    @muhammedenesgokdeniz6201 2 года назад

    You are awesome man . Thanks a lot

  • @OneGrindyBoi
    @OneGrindyBoi 4 месяца назад

    Congrats, you beat my professors of my old university. My current one got the same zest as you. Good luck w the Algorithm boss

  • @Wai-uc7tg
    @Wai-uc7tg 2 года назад

    I really like this channel. Thanks Bro Code.

  • @azizchahbi3538
    @azizchahbi3538 2 года назад

    Good explanation and examples

  • @rafikcherfa478
    @rafikcherfa478 7 месяцев назад +1

    thank you bro

  • @davidsabacahan9898
    @davidsabacahan9898 4 месяца назад

    Thank you ,You explain it well

  • @renecabuhan1675
    @renecabuhan1675 3 года назад

    My ged u explain it clearly bro. Thank you

  • @SereneEverhart
    @SereneEverhart 3 года назад

    # 1 best java teacher

  • @x_keamas
    @x_keamas Год назад

    Thank you for free courses ❤

  • @noah77
    @noah77 4 года назад +7

    Good video.
    BTW, can you make a small java game series or if not that then a video of making a cube in Java?

    • @BroCodez
      @BroCodez  4 года назад +7

      I'm going to be dedicating videos #90-100 in this playlist to games and projects mostly. I believe we are on #86 right now

    • @noah77
      @noah77 4 года назад +3

      *wow*! Thank you very very much!
      But only one tutorial of making something 3D?

    • @BroCodez
      @BroCodez  4 года назад +5

      I actually suck at 3D graphics lol
      I'll brush up on my skills and see what I can do
      no promises tho

    • @noah77
      @noah77 4 года назад +1

      @@BroCodez thanks for your efforts

  • @danny.3036
    @danny.3036 3 года назад

    Thanks, Bro! ☕ You're awesome!

  • @Simis999
    @Simis999 2 года назад

    All these prayers go towards my next job

  • @jamesarden7554
    @jamesarden7554 3 года назад

    great video. great teacher

  • @kippenvogelchen9717
    @kippenvogelchen9717 4 года назад

    ty! Very good explained! :-)

  • @曾毓哲-b1t
    @曾毓哲-b1t Год назад

    Thank you very much!

  • @vpenywise
    @vpenywise 3 года назад

    Bros before codes! Good content!

  • @buzzbuzz20xx
    @buzzbuzz20xx 2 месяца назад

    Great video

  • @chathurangagamage18
    @chathurangagamage18 2 года назад

    Great youtuber

  • @angelcastineira2561
    @angelcastineira2561 4 года назад

    thanks for the video!

  • @mackensonreginaldmichel399
    @mackensonreginaldmichel399 2 года назад

    Nice content.

  • @bossowa315
    @bossowa315 Год назад

    Yoo Man. Just got the idea from the video. Thanks.🙏

  • @noisyguest5249
    @noisyguest5249 4 года назад +1

    I subbed btw

  • @camerald8257
    @camerald8257 3 года назад

    so amazing 😮

  • @melbens3
    @melbens3 7 дней назад

    Love this

  • @akoldousamuel8484
    @akoldousamuel8484 2 года назад

    Good

  • @minhtetpaing1695
    @minhtetpaing1695 3 года назад

    Thank you so much sir.

  • @ahmadsan2907
    @ahmadsan2907 3 года назад

    thank bro you literally saving my A$$ before exam

  • @meggieelo
    @meggieelo 3 года назад

    YOU ARE THE BEST

  • @majid1885
    @majid1885 3 года назад

    awesome

  • @suryaa5564
    @suryaa5564 4 года назад

    Thank You So Much

  • @alikkk9169
    @alikkk9169 2 года назад

    nice video

  • @alaric-bs3348
    @alaric-bs3348 Год назад

    Like and subscribed, thank for saving my assignment grade

  • @baubaudinamo
    @baubaudinamo 3 года назад

    Good video.

  • @pouriahich4215
    @pouriahich4215 3 года назад

    🔥🔥🔥

  • @eugenezuev7349
    @eugenezuev7349 8 месяцев назад

    as always, thanks

  • @uritaabdelmasih292
    @uritaabdelmasih292 2 года назад

    Impressive!

  • @armandso1
    @armandso1 3 года назад +3

    Hi Bro Code! okay, so I'm totally new to programming and been told to start with Java (something I'm still trying to understand why:)). Anyway, I do like your content but do have a question regarding this particular video. I guess I understand the concept and the logic behind this dynamic polymorphism thing but still having a hard time to understand exactly why and when I would use it. Here's the confusion in my head: Why can't I just use the following if/else statement to achieve the exact same goal:
    ------------------------------------------------------------------------------------------------------------------
    if(choice==1) {
    Dog dog = new Dog();
    dog.speak();
    }
    else if(choice==2) {
    Cat cat = new Cat();
    cat.speak();
    }
    else {
    Animal animal = new Animal();
    System.out.println("That choice was invalid");
    animal.speak();
    }
    ------------------------------------------------------------------------------------------------------------------
    So, I instantiate a dog object or cat object when and if I need it at runtime just as in the way you have done it. Can you or someone reading this message and who knows the exact answer, please reply to me and let me know because it is driving me nuts trying to figure out. I have been Googling this thing for the past 2 days straight and have not been able to find a detailed explanation as to why someone would do it the Bro way when it can also be done my way. I'm sure there's a very good reason which is why it was implemented in the first place but WHAT IS THAT REASON? :)

    • @robinshere8697
      @robinshere8697 3 года назад +1

      I think depending on the need ,we can code as per your wish

    • @elzacontiero2770
      @elzacontiero2770 2 года назад +1

      The whole point of the example is to show how polymorphism works. So, the video shows animal variable being assigned first to a dog, then a cat and a general animal. If you remove the polymorphism by making Dog and Cat not extend Animal your code would compile and work as intended whereas the example in this video would not compile.

    • @bonifaciotano630
      @bonifaciotano630 18 дней назад

      your suggestion is correct but I think some people is not same of opinion

  • @augischadiegils.5109
    @augischadiegils.5109 4 года назад

    Thankss bro :)

  • @izaeljunior9007
    @izaeljunior9007 2 года назад

    nice video bro

  • @nehalayaaz9406
    @nehalayaaz9406 4 года назад

    Thanks 🌸

  • @mathumathusan154
    @mathumathusan154 2 года назад

    aasam vro

  • @danielmilewski7659
    @danielmilewski7659 2 года назад

    thanks!

  • @rashmikakelum8803
    @rashmikakelum8803 Год назад

    thank you

  • @speklex779
    @speklex779 Год назад

    dope video

  • @wallstreetbets7741
    @wallstreetbets7741 2 года назад

    Cool I learn it

  • @mariorossi1456
    @mariorossi1456 4 года назад +2

    What will you do after Java?

    • @BroCodez
      @BroCodez  4 года назад +1

      Python and Javascript for a little while. almost there

  • @rakhalsubbarao8375
    @rakhalsubbarao8375 9 месяцев назад

    Love u Brother

  • @eng6070
    @eng6070 3 года назад +1

    Hey bro, I got a question when watching the video, what's the difference when creating the object using Animal type compared to using the specific type of Dog? Appreciate it if someone could answer this.

    • @marcosa.6886
      @marcosa.6886 3 года назад

      ‎La diferencia es que si usas Animal en lugar de Dog el texto que se muestra en la consola será "Animal goes *brrr* en lugar de "Dog goes *bark*!".‎

  • @mudassirnaz1813
    @mudassirnaz1813 3 года назад

    Thanks

  • @kaushalprasadyadav9242
    @kaushalprasadyadav9242 2 года назад

    Please make videos for mobile app development.....

  • @praisethesun1
    @praisethesun1 3 года назад

    wait i have to point something out real quick im pretty sure insted of using if or elseif statements couldnt of u just used a switch statement. great vid btw

  • @ibrahimylmaz8378
    @ibrahimylmaz8378 2 года назад

    thanks bro

  • @mudassirnaz1813
    @mudassirnaz1813 3 года назад

    thanks

  • @bentameurmohammedayoub1464
    @bentameurmohammedayoub1464 3 года назад +1

    hi Bro why we don't use "Dog dog=new Dog();" and can we use switch statement in a place of "if Statement". thank you bro love the way you explain

    • @agnivodas
      @agnivodas Год назад +1

      I don't know if this is the correct answer, but here's what I think: if you're working on a very big project, the dog and cat objects will have many methods which are common, like eat(), sleep(), move(), and many more. And if you create more subclasses like Horses and Squirrels and others, their objects will have these methods too. So instead of writing these methods repeatedly in these classes, you could just create them in the Animal class and have these classes inherit the methods from the Animal class. I think that's why we need the Animal class (to keep the methods which are common to all the subclasses) alongside the subclasses (to keep the methods which are more specific to the subclasses). What I mean to say is, if you do Dog dog=new Dog(), you won't inherit the methods from the Animal class, which will force you to write the common methods all over again. But if you do Animal animal=new Dog(), you'll inherit all the common methods from the Animal class, as well as getting the methods specific to the Dog class.
      And yes, you can use a switch statement instead of an if block.

  • @mustafaercan686
    @mustafaercan686 11 месяцев назад

    Bro explained Factory pattern, without saying it's Factory pattern 👌

  • @chakmak
    @chakmak 3 года назад

    where is the new videos?!

  • @equaliser19
    @equaliser19 3 года назад

    Animals go BRUHHH

  • @theeverleinhour9616
    @theeverleinhour9616 Год назад

    ty bro

  • @noisyguest5249
    @noisyguest5249 4 года назад +2

    Do u think python is better or java

    • @meltdown6856
      @meltdown6856 4 года назад +4

      If you learn Java, all the other languages seem much much easier. Cuz java is one of the languages with heavier syntax. So id recommend java for beginners.
      Hope that helped :)

    • @noisyguest5249
      @noisyguest5249 4 года назад +1

      @@meltdown6856 i started with python

    • @BroCodez
      @BroCodez  4 года назад +1

      It's personal preference. I learned more about computer science and programming with Java, but Python is more convenient to use since there's less syntax. If you begin with Java and switch to Python later, Python should be very very easy to learn.

  • @girl6994
    @girl6994 4 года назад

    Good. But we should consider, if a Animal dog is treated as Animal, that is acceptable, but if that dog(which treated as Animal now) is treated as a cat, what exception will we get? I think we will learn that next.

  • @hannibalbianchi1466
    @hannibalbianchi1466 3 года назад

    ❤❤

  • @be432n3
    @be432n3 3 года назад

    long live bro

  • @romario92730
    @romario92730 3 года назад +1

    Thanks, Bro!

    • @WajdaanM
      @WajdaanM Год назад

      Free Palestine 🇵🇸

  • @fatihbasal6085
    @fatihbasal6085 Год назад

    i am helping you right now

  • @UltraSolarGod
    @UltraSolarGod 3 года назад

    1) Animal animal = new Dog/Cat();???
    2) Animal animal = new animal();
    can someone explain this to me how the 1st statement is true as its taking the data type from different class while declaing another class object ?? i know my question make no sense jus try to humor me
    the only explanation i am think is the animal class is extend to both dog and cat so we can take the data from both the class

  • @neuzen
    @neuzen 2 года назад

    Why not just create Cat someCat = new Cat() or Dog someDog = new Dog() inside that if-else?

  • @alexyakoveno4682
    @alexyakoveno4682 2 года назад

  • @shalajko
    @shalajko 4 года назад

    I'm Finding this familiar.

  • @ap1136-c4m
    @ap1136-c4m 9 месяцев назад

  • @anjapietralla5767
    @anjapietralla5767 Год назад

  • @noisyguest5249
    @noisyguest5249 4 года назад +1

    Am i the only one to still use notepad lmao

    • @noah77
      @noah77 4 года назад +1

      Download intellij

    • @BroCodez
      @BroCodez  4 года назад +1

      hey if it works for you, why not

  • @lamias7712
    @lamias7712 3 года назад

    and that's that easy :D

  • @venky3639
    @venky3639 3 месяца назад

    damn dude

  • @greeneggsandmushrooms9855
    @greeneggsandmushrooms9855 3 года назад

    polywhirl

  • @kianfrawley8364
    @kianfrawley8364 2 года назад

    k

  • @ashishthakur9983
    @ashishthakur9983 Год назад

    111

  • @ordanino9354
    @ordanino9354 Год назад

    Bro

  • @zstar8397
    @zstar8397 Год назад

    Yo just wanna say that GOD loved the world so much he sent his only begotten
    son Jesus to die a brutal death for us so that we can have eternal life
    and we can all accept this amazing gift this by simply believing in him (Jesus) asking for the forgiveness of your sins
    and forming a relationship with heavenly father.././...

  • @TheEvertonDias
    @TheEvertonDias Год назад

    Thanks, Bro!

  • @thedarkwhisperingcloud
    @thedarkwhisperingcloud Год назад

    Thanks 👍🏾

  • @kamandshayegan4824
    @kamandshayegan4824 2 года назад

    Thanks