Understanding Java Composition Part 1

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

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

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

    the fun thing is i am taking your course on Udemy and i did not understand it there, then i said maybe i can find anything on youtube that can help, then i found you lol .. the same video that i did not understand earlier.

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

    This is an excellent example of Aggregation, not of Composition! In Composition the PC is the owner of its parts (motherboard,case, monitor) to enforce life-long dependency , so the motherboard, case and monitor objects should never exist as stand alone objects outside of the PC object, since this would mean you still would have a reference to them, even if you would mark the PC object for deletion (by setting: thePC = null;)

    • @missjude01
      @missjude01 6 ปีที่แล้ว

      so should the motherboard, case and monitor be created inside the PC constructor? or should the tutorial be renamed to aggregration in java?

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

    Good job

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

    You monster. You took one of the greatest IDE's in the world and you put it on light theme! I could hardly recognize it! Great tutorial though.

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

    seen other videos on the topic, this has been the best so far. thanks for making this

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

    I enjoyed the tutorial as Aggregation. Composition should have code to create contained object inside the constructor.

  • @karthiknatarajan8990
    @karthiknatarajan8990 7 ปีที่แล้ว +4

    but it is aggregation not composition because lifetime of monitor case is not dependent of pc object

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

    I'm a taking course of yours on udemy and its fantastic.

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

    do you make sure this is Composition ? if it compostion why dont you try add line pc = null and see whether or not Case ,Monitor and Motherboard already delete ?

  • @bilalrana4863
    @bilalrana4863 6 ปีที่แล้ว

    Great example to explain Composition Thanks Tim !!

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

    Best video on composition I came across. Subbed, thank you sir!

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

    finally i understand this concept .. thanks so much

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

    I have owned the full course... Very depth course..
    I have one problem. In Monitor class, in getter method
    public String getNativeResolution() {
    return nativeResolution;
    }
    It is showing me an error - Incompatible types:
    Required: Java.lang.String
    Found: com.Composition.Resolution
    I am also using same IDE.... Please help

  • @milosdjokovic5735
    @milosdjokovic5735 7 ปีที่แล้ว

    Good job! Very well explained

  • @deactivisiongames9961
    @deactivisiongames9961 6 ปีที่แล้ว

    Great work !!!!!

  • @deactivisiongames9961
    @deactivisiongames9961 6 ปีที่แล้ว

    Loved your tutorial !!!!!

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

    .Thank You .You just described a great example greatly
    but for suggestion, I think it might be better to make it simpler ... I mean do not going too much on details would be better

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

    There is something that I can't undestand. For instance if the PC object is composed by a Case object, I think that you should have a new Case() sentence inside the PC constructor. The way you implemented it, creating the Case object in the main and passing the reference to the set method, looks more like aggregation than composition to me.

  • @avi_mukesh
    @avi_mukesh 8 ปีที่แล้ว

    Thank you so much for this video! Very nicely explained. However, I have one question: where you called the drawPixelAt() method like thePC.getMonitor().drawPixelAt(x,y,""), this does the same thing as theMonitor.drawPixelAt(x,y,""). Why is the previous way better? Is it simply so you only have to remember the name of the PC object?

  • @jdfdoyley
    @jdfdoyley 8 ปีที่แล้ว

    Great tutorial Tim, however, I wanted to know what your reason for using only "getters" as oppose to using both "getters and setters"?

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

      Thanks Jason. The reason is sometimes you may have a class where you don't want to allow an external class to update fields directly.
      Think of a bank account for example. You would probably be happy to have a getter to retrieve the balance, but would not want a setter to update the balance directly. You would probably want to only allow the balance to be affected by a particular method that validates the amount passed, logs the transaction, etc.

  • @mk42948
    @mk42948 7 ปีที่แล้ว

    Greate, thanks)

  • @anikv25
    @anikv25 10 หลายเดือนก่อน

    Thank you!

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

    Pretty neat. thank you

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

    Hey Awesome man Thanku #Tim

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

    thanks

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

    Thank you!!!

  • @ef28525
    @ef28525 7 ปีที่แล้ว

    Lately i've been hearing Composition > Inheritance, but i've been having trouble understanding how to build structures so that they avoid inheritance. Can someone give an example of how the vehicle class could be set up as composition instead of inheritance.

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

      Hi there! Did you find the answer to your question? I am also concerned about this issue(

  • @niklasmenard4872
    @niklasmenard4872 6 ปีที่แล้ว

    A few very interesting points made in this video and I like that the computer example is easy to visualize. Maybe next time use less time creating classes and more focus on the subject at hand (what is composition). This is my personal opinion though.

  • @RamaKrishna-xp4ju
    @RamaKrishna-xp4ju 8 ปีที่แล้ว

    Great Video .. Can I know any videos on jsp

  • @sovanraksa2112
    @sovanraksa2112 6 ปีที่แล้ว

    Thank you so much

  • @ScrappyPappy.1
    @ScrappyPappy.1 7 ปีที่แล้ว

    thanks a lot

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

    Brilliant tutorial that I have ever watched ! By the way, I got a question, which platform you are using for code, I don't think it is eclipse :)

  • @TheKarl321
    @TheKarl321 8 ปีที่แล้ว

    can't believe i baught the course from udemy

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

      +Karl Samaha You are enjoying the course on udemy? This is one of the 100+ videos on udemy for this course.

  • @irasemaangeles9035
    @irasemaangeles9035 6 ปีที่แล้ว

    Aggregation please!!