I have my java exam in university in 15 days and I was so stressed about it but watching your videos made it so easy to understand Java. Lots of love to you from Stockholm. :)
Great video, loving your channel so far! I want to add for new learners: One of the most important uses of upcasting is when you have an ArrayList, List, LinkedList, etc, and you can make it of type Animal while adding all types of animals like Cats, Dogs and whatever
Or you can have an array as well. Array of chess pieces for instance. And then every chess piece is actually a pawn, knight, bishop, rook, queen or a king but they are all upcasted as chess pieces in the array.
I'm watching this video literally less than 2 hours before my test and it has helped me a lot, thank You very much. (I'll make sure to study more for the next time )
I try to teach my daughter about upcasting and downcasting for 2 weeks with no avail, And she immediately got it after watching this video, Best explanation !
Love your videos John, I am using them to supplement the course materials in my intermediate java college course. They are extremely helpful for a 52 year old.
I remember watching this video a couple of months ago. That was the moment I understood downcasting and upcasting. The book that I was reading explained it so poorly that I wasn't able to understand what was going on, how downcasting and upcasting work. This guy is such a talented teacher, in 10 minutes he perfectly explained a topic which I wasn't able to understand whatsoever.
this video is life saver, nobody on internet explained it this way, whenever i read an article or watch a video about up/down casting they just tell you the syntax which is pretty easy, but i never understood the concept of it, why should i use up/down casting? since i already can call each method from it's own object? but finally i found this video although i'm coming from C# background and i could still understand everything he said. Thumbs up for this man!
i like c# over java (very different usages), but (don't kill me) javascript over c# for game dev. in unity, even though they dropped it. slower, but easier to write IMO
I was taking this online java course and in it they threw in upcasting and down casting while teaching polymorphism without explaining what this casting is. This was such a great explanation!
Thank you so much for explaining these concepts. I'm learning java. I'm new to to your channnel. No one can explain concepts in more simple way other than you. Keep uploading new tutorials.
OMG ! this video made my day , I have been searching for upcast and downcast for a day , none cleared me , but the example in your video told why we have to use this upcast and downcast , caught my mind , thankyou so much , you are an amazing explainer. and I subscribed your channel , keep posting amazing contents.
You are awesome! I've been searching the answer of this type of code on the internet for a couple of days and even in the stack overflow I couldn't find a satisfactory answer. You made it crystal clear. One more time, Thank you :)
I still had my doubts about this despite having read my textbook and having attended my university lecture about this two times. I don't normally comment but THANKS A TON for explaining this in just 10 minutes! May God bless you 💞
Yes, he made the concept easy to understand while the book that I was reading made this concept unnecessary hard. Someone posted a sequence from their book which "explains" casting in Java and yeah, you can see how bad the "explanation" is. It is more of a description of casting for people who already understand what casting is and who are experienced in Java then it is an explanation aimed at learners who don't already understand casting and who are Java beginners. People who write such books are talented, it is not easy to make such easy concepts hard to understand, but they manage to do it.
What a great video! I am reading a book on Java and I didn't understand downcasting, upcasting, instanceof at all until I watched this video. This explanation is so much better than the explanation in my book.
This vidio survived me from miss understanding. After reading lots of blogs and watch some videos, just your vidio clarified all the concepts and reasons to me🤩
First time RUclips recommendation worked for me. Came across you video's and haven't stopped watching ever since. Thank you so much, your explanation are unbelievably good and easy to understand.
Hey John! Thank you so much for your videos and course on the website its 200% worth it, I was so tired of these Indian accent guys, was barely able to understand anything, but with your explaination I finally get it all!
6:03 The type of variable determines which method you can call. The specific type of object which the variable is referring to determines which specific implementation of that method will be used
This saved mee thank you so much!! Been re-reading the notes given by my lecturers and couldn't wrap my head around it. This video made is so easy to understand!
I had the same impression when I learned this a couple of months ago. The book that I was reading explained it so poorly and then I watched this video and suddenly I understood upcasting and downcasting while also wondering how could I ever not understand this.
I love that you put extra tips and hints for beginners, let alone explaining naming conventions and providing useful code style notes in your videos. I was wondering misconception of what basic concept/topic of Java is more common among Intern/Junior level programmers in your opinion? Thank you!
Frankly, This video cleared all my doubts regarding object casting ..Thanks john for this amazing video...and I request you to create a complete java tutorials playlist for beginners so that we can go with a flow..try considering this request :)
Hey John, thank you so much for sharing these free classes. You are awesome. In the meantime, can I ask to share the codes in this video and others in NotePad or any other relevant formats under the video(s)? Your reply is highly appreciated.
@@CodingWithJohn I don't want to work, I want to bang on a drum all day....I don't want to play, I want to bang on a drum all day....the funny thing is that Todd Rundgren was pretty obsessive, recorded whole albums with himself playing all the instruments, writing everything, doing all the engineering and editing and producing...also a computer programmer. So, that song is triply hysterical.
(I'm using this comment for note-taking) Biggest takeway: the type of the variable determines which methods you can call but the specific type of the object that this variable is referring to determines which specific implementation of that method will be used when the method is called
Thanks a lot! I ended up learning OOP concepts with Java since I made the mistake to start learning programming with Dart... Anyway, very well explained, keep it up!
So much clarity provided, makes way more sense than my book's definition of downcasting: "If a program needs to perform a subclass specific operation on a subclass object referenced by a superclass variable (me: uhhhh..what?), the program must first cast a superclass reference to a subclass reference(me: .......)." 😂 I would much rather watch your video instead. Thank you!
This was more or less how it was explained in the book that I was reading a couple of months ago. Then I watched this video a couple of months ago and I finally understood upcasting and downcasting! John is such a great teacher. On the other hand, I feel like people who are writing this book are trying not to be understood by learners. Now, I understand the sentence that you quoted, but you can only understand that sentence if you already understand downcasting and upcasting! Which defeats the purpose of this sentence which was supposed to explain downcasting and upcasting to learners who don't already understand what it means. I find it similar to Wikipedia pages about math and physics. You can only understand them if you already understand the topic. These things are made as a refreshers not as a learning tool. It is a shame that such poor explanations enter learner books (which they often times do unfortunately).
the "meow" at 5:05 was the best part of the video, thanks john
5:08
I have my java exam in university in 15 days and I was so stressed about it but watching your videos made it so easy to understand Java. Lots of love to you from Stockholm. :)
hvordan var det?
really? i got my sem exam tommorow and its 9pm now. i just started now btw. people get sick very quickly bruh
@@jospherstudies omg good luck.
@@samcousins3204 det var inte så dåligt haha
I have mine tomorrow, and I'm learning more here than I have in class.
I've been learning java for a few years and NEVER had such a good explanation about this. Thank you John you're saving my degree.
What the f... those are the best explanations I've heard so far. That sums up 3 hours of Uni lecture in 10 minutes!
Great video, loving your channel so far! I want to add for new learners: One of the most important uses of upcasting is when you have an ArrayList, List, LinkedList, etc, and you can make it of type Animal while adding all types of animals like Cats, Dogs and whatever
yeah and after that you can check for each animal (if you wish) what kind of animals they actually are, to use specific methods
TX tjh
Or you can have an array as well. Array of chess pieces for instance. And then every chess piece is actually a pawn, knight, bishop, rook, queen or a king but they are all upcasted as chess pieces in the array.
Thank you for sharing that. Appreciate it!
Lots of people know Java very well, but only a handful of people know how to pass the knowledge on. Congrats for being one of them!!!
I'm watching this video literally less than 2 hours before my test and it has helped me a lot, thank You very much. (I'll make sure to study more for the next time )
Excellent, clear video. Thanks. 😊
Also, I liked the characterisation you gave Java… it trusted us “but we betrayed its trust by throwing-in a cat” 😂
This made me genuinely laugh 😂.
And at the end of it all, we come to know that good code is does not trust people. Better safe than sorry 🙌🏼
for a week i was trying to wrap my head around why we would need to cast objects, this literally lifted a weight off my shoulders thank you!
I know the feeling -- and this video just blew that door wide open. What a relief!! :o)
I've been searching for a specific answer for over and hour, came over your video and got the answer in less than 5 minute, thank you very much!
I try to teach my daughter about upcasting and downcasting for 2 weeks with no avail, And she immediately got it after watching this video, Best explanation !
Loved this again! My 9 years old son is watching you on RUclips and practicing the Java.
@Daniel Bunting Having a stable career in 9 years, as well as making hardware do exactly what you want it to do is indeed a fun life.
The best enjoyable way to learn Java is your lovely channel. I appreciate your efforts.
HANDS DOWN the absolute best channel I've found regarding Java tutorials and explanations. Thank you John!
I love it 8:10 "and than we betray that trust, and we send in a cat" 😂😂😂😂😂
Sir, your explanation is amazing. Thank you a lot.
I'm actually amazed how easy you made this concept for me. Also I like how you explain why such concepts are necessary. Thanks you for your videos.
This was so helpful! My professor just randomly assumed that we know what casting is and I didn't quite get the hang of it til this video! Thanks!!
Love your videos John, I am using them to supplement the course materials in my intermediate java college course. They are extremely helpful for a 52 year old.
I remember watching this video a couple of months ago. That was the moment I understood downcasting and upcasting. The book that I was reading explained it so poorly that I wasn't able to understand what was going on, how downcasting and upcasting work. This guy is such a talented teacher, in 10 minutes he perfectly explained a topic which I wasn't able to understand whatsoever.
this video is life saver, nobody on internet explained it this way, whenever i read an article or watch a video about up/down casting they just tell you the syntax which is pretty easy, but i never understood the concept of it, why should i use up/down casting? since i already can call each method from it's own object? but finally i found this video although i'm coming from C# background and i could still understand everything he said. Thumbs up for this man!
High quality stuff, I'm learning C# but the underlying concepts are very well taught, even if it's in Java. Thank you!
i like c# over java (very different usages), but (don't kill me) javascript over c# for game dev. in unity, even though they dropped it. slower, but easier to write IMO
They're both OOP languages so a lot of the underlying concepts are the same as other "C" based ones.
I was taking this online java course and in it they threw in upcasting and down casting while teaching polymorphism without explaining what this casting is. This was such a great explanation!
Thank you so much for explaining these concepts. I'm learning java. I'm new to to your channnel. No one can explain concepts in more simple way other than you. Keep uploading new tutorials.
The best explanation of casting ever. Thanks, John.
OMG ! this video made my day , I have been searching for upcast and downcast for a day , none cleared me , but the example in your video told why we have to use this upcast and downcast , caught my mind , thankyou so much , you are an amazing explainer. and I subscribed your channel , keep posting amazing contents.
You are awesome! I've been searching the answer of this type of code on the internet for a couple of days and even in the stack overflow I couldn't find a satisfactory answer. You made it crystal clear. One more time, Thank you :)
I still had my doubts about this despite having read my textbook and having attended my university lecture about this two times. I don't normally comment but THANKS A TON for explaining this in just 10 minutes! May God bless you 💞
Man that's quality content here! Thanks for this, I'm a CS major and it helps me a lot in my Java class.
Yes, he made the concept easy to understand while the book that I was reading made this concept unnecessary hard. Someone posted a sequence from their book which "explains" casting in Java and yeah, you can see how bad the "explanation" is. It is more of a description of casting for people who already understand what casting is and who are experienced in Java then it is an explanation aimed at learners who don't already understand casting and who are Java beginners. People who write such books are talented, it is not easy to make such easy concepts hard to understand, but they manage to do it.
What a great video! I am reading a book on Java and I didn't understand downcasting, upcasting, instanceof at all until I watched this video. This explanation is so much better than the explanation in my book.
This vidio survived me from miss understanding. After reading lots of blogs and watch some videos, just your vidio clarified all the concepts and reasons to me🤩
Mate, what a great and fully comprehensive video about this subject on which I smacked my head at the wall the whole day ❤
First time RUclips recommendation worked for me. Came across you video's and haven't stopped watching ever since. Thank you so much, your explanation are unbelievably good and easy to understand.
Best java teacher I've ever had.
i havemore than a couple of videos to understand casting, but i found yours so clear , thanks jo
this guy always makes subjects easy and fun to learn
I’m a relatively new C# programmer and even though this video was explained in Java it made PERFECT sense to me. Great job!
This video is a life saver for upcasting and downcasting. Thank you!!
Thank u you are saving my tomorrow exam and helping me understand the things my teacher couldnt, ive seen 4 videos in the last hour
It was one of the best explanations about topcasting. Thank you so much for posting!!!
A difficult topic explained in such a simple way. Great video! Thanks bud!
Hey John! Thank you so much for your videos and course on the website its 200% worth it, I was so tired of these Indian accent guys, was barely able to understand anything, but with your explaination I finally get it all!
as new backend engineer, I really enjoy this project
love from Virginia
I like these videos. They have been helping me a lot lately :)
6:03 The type of variable determines which method you can call. The specific type of object which the variable is referring to determines which specific implementation of that method will be used
thanks for such a clear and positive explanation from Uzbekistan
Damn, it's so clear now. The polymorphism. Thank you, John.
nice tutorials from him in java. he teaches with simple and understanding examples.
keep up the good job.
Glad you like them!
John, you are the best! Big respect to you from Russia!)
I love your channel as a java programmer, I have learned a lot of new things. Thanks!
very clear explanation with the right amount of pacing, love it!, great video thanks for helping me understand!
This saved mee thank you so much!! Been re-reading the notes given by my lecturers and couldn't wrap my head around it. This video made is so easy to understand!
I had the same impression when I learned this a couple of months ago. The book that I was reading explained it so poorly and then I watched this video and suddenly I understood upcasting and downcasting while also wondering how could I ever not understand this.
Thanks, This concept was very confusing for me but you have explained beautifully.
I have an exam in 14 hours this is really helpful!
6:02 summarizes everything pretty nicely.
I love that you put extra tips and hints for beginners, let alone explaining naming conventions and providing useful code style notes in your videos.
I was wondering misconception of what basic concept/topic of Java is more common among Intern/Junior level programmers in your opinion?
Thank you!
Super helpful. Thank you!
Simpliest explaining method i've ever seen , thanks sir keep up 👍
I love your channel, is my favorite. This summer hope takes yours Java course asap.
Wow that was amazing john, Thank you so much.
As top-notch as it gets. Just exceptional work. Thanks a million! :o)
Hi John, I really love your videos it really fresh up my mind on things I forget on Java.
Your explanation is crystal clear!
This video really helps understand what downcasting and upcasting do! Thnx a lot :D
GREAT TUTORIAL!!!!!! THANK YOU SO MUCH I LEARNED A LOT FROM THIS CHANNEL.
I am having 8+ year of exp bt still i love to watch ur videos even i know all the point which u covered. Great
found my uni lecture on this a bit difficult to understand but this video laid it out so clearly!!
Thanks, your videos are incredible! (Comment for the support because of your support!)
Hey John, thanks for sharing so your knowledge! Loving your channel
This is a really good explanation, it helped me get through learning this pretty fast.
I enjoyed, I learned way more than merely "something", I subscribed and I am surprised why I didn't meet you before...
The instanceof part was soooo cool 🤯
so clear, perfect explanation
Love your videos John, you are not bad at explaining topics that I need more clarification on.
Great video John! The explanation was clear and engaging! Thank you!
Great explanation! I have finally understood the hardest part of OOP for me. Thank you.
Long live to genius people like you. you are million times better than my prof.
massive respect sir I've been struggling with this but you finally cleared it for me. thank you so much
Frankly, This video cleared all my doubts regarding object casting ..Thanks john for this amazing video...and I request you to create a complete java tutorials playlist for beginners so that we can go with a flow..try considering this request :)
Thank you , greetings from Costa Rica !
You teach better than my professor, thank you so much!
What a fantastic explanation!
Really exactly the video that I needed.
This video is the best explanation for this topic. Thanks.
You make everything a piece of cake. Thanks for sharing with us
Hey John, thank you so much for sharing these free classes. You are awesome. In the meantime, can I ask to share the codes in this video and others in NotePad or any other relevant formats under the video(s)? Your reply is highly appreciated.
Are you also playing the drums? You really are the coolest java channel on this platform
Yep! Just self-taught and play at home, not in a band or anything. But it's one of my favorite things to do.
@@CodingWithJohn I don't want to work, I want to bang on a drum all day....I don't want to play, I want to bang on a drum all day....the funny thing is that Todd Rundgren was pretty obsessive, recorded whole albums with himself playing all the instruments, writing everything, doing all the engineering and editing and producing...also a computer programmer. So, that song is triply hysterical.
Fantastic tutorial - simple and easy to follow (and it works for C#).
Very nice vídeo! i´m from brazil and you video helped me so much, thanks! :)
Thank you so much John! Learned a lot as always :)
(I'm using this comment for note-taking)
Biggest takeway:
the type of the variable determines which methods you can call
but the specific type of the object that this variable is referring to determines which specific implementation of that method will be used when the method is called
Thanks a lot! I ended up learning OOP concepts with Java since I made the mistake to start learning programming with Dart...
Anyway, very well explained, keep it up!
Bro just made it look super easy
Exactly what I needed! Thank you :)
So much clarity provided, makes way more sense than my book's definition of downcasting: "If a program needs to perform a subclass specific operation on a subclass object referenced by a superclass variable (me: uhhhh..what?), the program must first cast a superclass reference to a subclass reference(me: .......)." 😂 I would much rather watch your video instead. Thank you!
Programmers aren't very good at english.
This was more or less how it was explained in the book that I was reading a couple of months ago. Then I watched this video a couple of months ago and I finally understood upcasting and downcasting!
John is such a great teacher.
On the other hand, I feel like people who are writing this book are trying not to be understood by learners. Now, I understand the sentence that you quoted, but you can only understand that sentence if you already understand downcasting and upcasting! Which defeats the purpose of this sentence which was supposed to explain downcasting and upcasting to learners who don't already understand what it means. I find it similar to Wikipedia pages about math and physics. You can only understand them if you already understand the topic. These things are made as a refreshers not as a learning tool. It is a shame that such poor explanations enter learner books (which they often times do unfortunately).
Great video John helped me loads thanks
I love these explanations! Thanks Sir!!!
This was a bit complex topic. Well explained sir 👏👏
I was having a hard time trying to understand this casting thing. You just saved some of my brain cells from bursting into flames. :'v
Thank u for your time ❤I really did learn 🥰