KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
I was explaining OOP to my friend. I was unable to answer this question. I just escaped by saying, since OOP depicts the real world. In real world, parents can accommodate children but children cannot accommodate parents. same is the case in OOP. class Parent { int prop1; int prop2; } class Child : Parent // class Child extends Parent (in case of Java Lang.) { int prop3; int prop4; public static void Main() { Child aChild = new Child(); Parent aParent = new Parent(); aParent = aChild;// is perfectly valid. aChild = aParent;// is not valid. Why?? } } Why isn't this statement valid? aChild = aParent;// is not valid. Why?? since aChild 's members are superset of aParent 's members. Then why can't aChild accommodate a parent.
Tags (comma-separated)
Save Edits
Cancel