Association, Aggregation, Composition, Abstraction, Generalization, Realization, Dependency

26/06/2010

These terms signify the relationships between classes. These are the building blocks of object oriented programming and very basic stuff. But still for some, these terms look like Latin and Greek. Just wanted to refresh these terms and explain in simpler terms.

Association

Association is a relationship between two objects. In other words, association defines the multiplicity between objects. You may be aware of one-to-one, one-to-many, many-to-one, many-to-many all these words define an association between objects. Aggregation is a special form of association. Composition is a special form of aggregation.

Example: A Student and a Faculty are having an association.

Aggregation

Aggregation is a special case of association. A directional association between objects. When an object ‘has-a’ another object, then you have got an aggregation between them. Direction between them specified which object contains the other object. Aggregation is also called a “Has-a” relationship.

Composition

Composition is a special case of aggregation. In a more specific manner, a restricted aggregation is called composition. When an object contains the other object, if the contained object cannot exist without the existence of container object, then it is called composition.

Example: A class contains students. A student cannot exist without a class. There exists composition between class and students.

Difference between aggregation and composition

Composition is more restrictive. When there is a composition between two objects, the composed object cannot exist without the other object. This restriction is not there in aggregation. Though one object can contain the other object, there is no condition that the composed object must exist. The existence of the composed object is entirely optional. In both aggregation and composition, direction is must. The direction specifies, which object contains the other object.

Example: A Library contains students and books. Relationship between library and student is aggregation. Relationship between library and book is composition. A student can exist without a library and therefore it is aggregation. A book cannot exist without a library and therefore its a composition. For easy understanding I am picking this example. Don’t go deeper into example and justify relationships!

Abstraction

Abstraction is specifying the framework and hiding the implementation level information. Concreteness will be built on top of the abstraction. It gives you a blueprint to follow to while implementing the details. Abstraction reduces the complexity by hiding low level details.

Example: A wire frame model of a car.

Generalization

Generalization uses a “is-a” relationship from a specialization to the generalization class. Common structure and behaviour are used from the specializtion to the generalized class. At a very broader level you can understand this as inheritance. Why I take the term inheritance is, you can relate this term very well. Generalization is also called a “Is-a” relationship.

Example: Consider there exists a class named Person. A student is a person. A faculty is a person. Therefore here the relationship between student and person, similarly faculty and person is generalization.

Realization

Realization is a relationship between the blueprint class and the object containing its respective implementation level details. This object is said to realize the blueprint class. In other words, you can understand this as the relationship between the interface and the implementing class.

Example: A particular model of a car ‘GTB Fiorano’ that implements the blueprint of a car realizes the abstraction.

Dependency

Change in structure or behaviour of a class affects the other related class, then there is a dependency between those two classes. It need not be the same vice-versa. When one class contains the other class it this happens.

Example: Relationship between shape and circle is dependency.

Thank you..
Looking forward for your next post…

Rajesh on June 28th, 2010 7:12 am

very nice content to start

Thanks!

himanshu on June 28th, 2010 7:24 am

Now these basic can be easily differentiated, after read this post

Gift vincy on June 28th, 2010 12:12 pm

Very helpful. Thanks.

fixxer on June 29th, 2010 10:22 pm

Nice article. Explanation the concepts clearly.Thank you

ashok on June 29th, 2010 11:22 pm

Good article. Thanks.

Gajanan on June 30th, 2010 3:38 am

Very nice and easy to understand in a simple definitions.

Ravindra Sareddy on July 1st, 2010 7:59 am

It will be still good iy you give examples with code also.

Anonymous on July 1st, 2010 3:22 pm

Thank you all. I will try to update the post with sufficient java source code examples soon.

Joe on July 1st, 2010 5:58 pm

thanks for posting.please update Java with ibatis configuration it is helpful to us
thanks in advance

Anonymous on July 1st, 2010 9:57 pm

An example for aggregation is missing and it could be like:

A car has a stereo system.A car can exist without a stereo system. There exists aggregation between car and stereo.

Jyotilal on July 13th, 2010 5:59 pm

Thanks Jyotilal for the aggregation example. Actually its otherway around.

A car has a stereo system. A stereo system can exist without a car. There exists aggregation between car and stereo.

Don’t go too technical into electronics and say a car stereo needs a car. Just for an example!

Joe on July 14th, 2010 5:13 am

Really very good and straight forward description about the Association, Aggregation, Composition, Abstraction, Generalization, Realization, Dependency. Thank you so much..

Its very handy too..

Cheers,
Prashant.

Prashant S Shivashimpi on July 20th, 2010 11:02 am

Superb Example.

Keep Posting Joe

Harish Dewangan on July 29th, 2010 10:46 am

Thanks! Very nice explanation.

Lingaraj on August 1st, 2010 9:27 am

Thanks for helping……………

Dhananjay..........aec on August 1st, 2010 4:51 pm

Good explain…

Muthukumar on August 3rd, 2010 4:52 am

Hi ,

thnaks for that information.

but i think i havnet understand that last.(Dependency)
does it comes with arrow or just —- lines. pls post me

swathi on August 15th, 2010 12:37 pm

Great Post! It clear my mind.

kohtaik on October 2nd, 2010 12:46 pm

Really Good article. Nice work.

Rakesh on October 7th, 2010 9:39 am

nice… its in a generalized way….very helpful

Anonymous on October 8th, 2010 7:07 am

Sir. i m n trouble..if u post full code .which contain aggregation and compostion.then it will be very clear to all of us.according to programing point of view.
and realy good work u have done.we appriciate ur work…
plz post full code waiting 4 ur reply

Mutayyab Shah on October 26th, 2010 6:05 pm

very nice article… it clearly explains the basic concepts… thanx!

kaushiki on October 31st, 2010 1:32 pm

Thanks Joe for the wonderful post. It is really quite useful.Most of the times we tend to get confused with these terms as all sound the same. Few more additions would make it better:
a) Class diagrams
b) Code for Aggregation and Composition

Amit Shekhar on November 3rd, 2010 10:28 am

Thank You Very Much… It Was Very Helpfull…

Salman Khan on November 6th, 2010 12:02 am

Thank you for addressing all relevant items.. little bit more code would be marvelous. still great. CDW

Casper on November 9th, 2010 9:03 am

Good explaination mate

Narayan on November 9th, 2010 10:15 am

Terse explanation of Association, Aggregation and Composition..!!! :) Thanks a lot… :)

Looking forward for your next posts…

Chetan Jadhav on November 14th, 2010 5:38 pm

i searched most of the definitions for these association,aggregation and composition…u cleared my doubt …u people are explaining like baby feeding thank you……

RenuNaidu..... on November 27th, 2010 1:41 am

jst superb…think u r bst faculty for starters..i bliv in it…”with strong foundationz u can aim for the sky.”

Abhijit Boruah on November 27th, 2010 1:34 pm

Hi,

The definition given in this site is very clean and neat and simple and very understandable instead of blah..blah…

Cheers !!!
KM

kamatchi sundaram on December 3rd, 2010 9:05 am

thank you very much for sharing your knowledge. very useful content. I learnt the concept very well to be applied in OOAD.

Vijay Agalcha on December 10th, 2010 2:26 pm

I was always get confused for these relationship but as you defined these relationship it became easy to understand. Thanks buddy :)

Sanjay Upadhyay on December 17th, 2010 6:49 am

Thanks for these information. Great definition for aggregation n composition

Kareem Afifiy on December 22nd, 2010 10:49 am

Very nice page.
It contains all required information about association, aggregation, composition.
thanks a lot.
Prabhat.

Prabhat on January 3rd, 2011 8:59 am

Nice.. Thank You..

viji on January 12th, 2011 5:32 pm

Hi,

good article.

Thank you.

Radhika on January 19th, 2011 9:27 am

hi,
thanks for info.this is nice with example.this is really helpful for student as well as employee.
22/jan/2011

abhishek on January 22nd, 2011 10:29 am

very clear and crisp.

priya on February 1st, 2011 4:57 am

it’s so clear so far what I see!
thank you!

lize on February 6th, 2011 10:45 am

Easy to understand.Nice Post.

Supriya V on February 10th, 2011 7:14 am

Very nice….

Balaji on February 10th, 2011 8:16 am

Thanks ,
your definition is very clear

pavan srivastava on February 10th, 2011 7:15 pm

Sir,
please describe me multiple inheritance,candidate key, in oops.

sachin gupta on February 13th, 2011 8:07 am

Sir,
Please let me know how to depict association, aggregation and composition in java code.

Regards,
Shylaja V.

Shylaja on February 16th, 2011 9:37 am

thanks this artical is very easy to understand

manisha on February 20th, 2011 11:52 am

please give some examples of programs as illustration for class relation……
it will be useful.
and thanks very much for this nice post.

ashri on February 27th, 2011 5:14 pm

Hey,

Its sweet & simple !! You made task very simple and anyone can understand.

Great Work!!!!

Manjunath on March 6th, 2011 12:05 am

it is simple and very easy to understand
thank you,

kondalarao on March 9th, 2011 3:29 am

simple and understanble…
Thanks a lot

sambha on March 14th, 2011 8:01 pm

Great Work !!!
Keep going on !!!

All the best !!

sadish on March 16th, 2011 3:20 pm

Very nice article. I am facing a unique situation where we have modeled a test case with two compositions between the same two entities. Is this realistic? If so, can you give me a real world example for this?

Su on March 29th, 2011 3:29 pm

thank you for you very clear work joe.

ray on April 6th, 2011 6:21 pm

Wow., Awesome work., Thankz,
Keep up the Good work.,

KARTHIKEYAN A on April 9th, 2011 5:17 pm

thanks much. very useful information

Rajasekhar on April 13th, 2011 2:22 am

thankz sir , very nice content

ankana on April 13th, 2011 7:51 am

thanks sir,

this content is very helpful and outstanding

ayushi garg on April 13th, 2011 8:02 am

thanks for give simple & informational content

raziya mev on April 13th, 2011 8:20 am

thanks 4 this outstanding content

pranjal soni on April 13th, 2011 8:23 am

mast laga maja aagaya…………

vidhyanivash singh kushwaha on April 15th, 2011 7:18 am

Excellent! Thanks so much.

Sharron on April 15th, 2011 11:59 pm

its very useful for my net i need more info about ooad

nandhini on April 20th, 2011 7:13 am

Nice article. Keep going.

Anonymous on May 1st, 2011 12:51 am

very nice

BLV on May 2nd, 2011 11:08 am

[...] pattern can be implemented in two ways. One using the inheritance method and second using the composition method. Just the implementation methodology is different but the purpose and solution is [...]

Adapter Pattern&hellip on May 7th, 2011 6:01 am

very Nice article……
but need some coded exemples……

BTW thank you very much.

Avinash on May 14th, 2011 9:48 am

very nice understanding…thanks

shoban on May 16th, 2011 9:44 am

Excellent, keep it up. Can you explain some of the fewdesign patterns in better understandable way.

Thanks a lot buddy.

Girish

girish on May 17th, 2011 6:43 pm

could you please provide some code samples for association, aggregation and other all oops concepts.

Thanks
Varma

Varma on May 18th, 2011 4:56 pm

[...] 我们首先创建一个接口,它为将用于装饰器的类创建蓝图。然后仅仅实现该接口的基本功能。到目前为止我们得到了一个将带有装饰器的蓝图类。 创建一个包含(聚合关系)该接口类型的一个属性。该类的构造方法将该类型接口的实例赋值给该属性。 该类为装饰器的基类。现在你可以扩展该类,然后创建你所需的具体的装饰器类。具体的装饰器类将添加它自己的方法。在之前或之后执行它自己的方法,然后具体的装饰器类将调用基实例的方法。 装饰器模式的关键是将方法和基类实例绑定是在运行时将基类的实例传入到构造方法中。因此可以动态的定制特定实例的行为而不影响其他的实例。 [...]

装饰器设计模式 | J&hellip on May 23rd, 2011 12:58 am

multiplicity is no given here :) pls add

thanks

Girish Varma on May 24th, 2011 4:34 pm

Its a great post. Thanks Man!

Atif Mehar on May 25th, 2011 10:46 am

Please give me a simple explanation with example on difference between abstraction and encapsulation.

simanchala on June 2nd, 2011 6:20 am

Very nice post…

Dinesh on June 2nd, 2011 6:10 pm

hi,
very nice approach i realy like this complete definition pakage with examples

maya butt on June 11th, 2011 3:15 pm

Really nice explanation . Simple and easy to understand
I liked the formate of your blog….the best i seen till now

Anonymous on June 14th, 2011 5:52 am

Nice

K eep
I t
S imple
S illy

Completely Followed

Nice Simple Sober & Easily Grab-able & Understandable

Pawan on June 15th, 2011 10:02 pm

nice, short, simple and good explanatory.

jagdish on June 17th, 2011 5:02 am

Nice one
Thanks

K Vishnu on June 24th, 2011 8:33 am

Sir……this is the best notes of Association I ever seen…….thanks a lot for the simple ans besr definations…

NiteshKumar on June 26th, 2011 2:59 pm

Simply Superb

Narendra on June 28th, 2011 5:13 am

very nice

Gunvant phalak on July 7th, 2011 7:16 am

Very easily explained and easy to understand all the definition. Keep it up

Parmod on July 8th, 2011 6:56 am

too much informative

Shahbaz Ali on July 9th, 2011 10:10 am

simply super….very useful Thanks for posting..

niranjan on July 15th, 2011 9:02 am

This article is very helpful and well explained. Thanks

Baravil Barivare on July 15th, 2011 7:10 pm

Good Artcile. it helps.. Thanks..!

pravinth on July 17th, 2011 9:49 am

very nice sir. . . . thank u vry much………

sailasya on July 19th, 2011 7:36 am

it helped me alot sir………thank u sir

mowlika on July 19th, 2011 7:37 am

Very good post, easy way of understanding thank u

prasad on July 21st, 2011 12:20 pm

Useful information with good explanation well done Joseph..

Ramakrishna Chandragiri on July 23rd, 2011 4:11 pm

realy good article

ashok on July 28th, 2011 7:59 am

Thanks dude.. its really so simple to understand these stuffs…….. really gr8 work.

Zahid Nasim on July 29th, 2011 10:16 am

nice explanation.. thiru

Thirupathi on August 3rd, 2011 4:43 pm

Very Good article… Thank you..

Anonymous on August 6th, 2011 2:44 pm

thanks for simple explanation of association, aggregation, composition. Good Work…Thank you..

Kintesh on August 9th, 2011 9:02 am

it is so easy and interesting

shubh on August 15th, 2011 2:16 pm

explanation also easy for preparing answerssssssssssss

shubh on August 15th, 2011 2:18 pm

Nice Article Joe..Like very much the way you describe ,Must say Very good Article for the beginners …!!!

Om Behera on August 16th, 2011 5:45 am

Superb Article !!!!!!!!!

Prakash on August 22nd, 2011 6:58 am

Nice Article, Much useful for a beginner

NextGeneration on August 22nd, 2011 4:17 pm

very good explanation on composition and aggregation relationships

Ramyashree on August 25th, 2011 7:43 am

Dear sir, I need more explanation and example about abstraction… How to apply in c…? i use data structure linked list concept..

Mani on August 25th, 2011 5:55 pm

Aggregation
———————-
Aggregation is a relationship between two classes that is best described as a “has-a” and “whole/part” relationship. It is a more specialized version of the association relationship. The aggregate class contains a reference to another class and is said to have ownership of that class. Each class referenced is considered to be part-of the aggregate class

Ownership occurs because there can be no cyclic references in an aggregation relationship. If Class A contains a reference to Class B and Class B contains a reference to Class A then no clear ownership can be determined and the relationship is simply one of association.

For example, imagine a Student class that stores information about individual students at a school. Now let’s say there is a Subject class that holds the details about a particular subject (e.g., history, geography). If the Student class is defined to contain a Subject object then it can be said that the Student object has-a Subject object. The Subject object also makes up part-of the Student object, after all there is no student without a subject to study. The Student object is therefore the owner of the Subject object.
Examples:

There is an aggregation relationship between Student class and the Subject class:

public class Subject {

private String name;

public void setName(String name)
{
this.name = name;
}

public String getName()
{
return name;
}
}

public class Student {

private Subject[] studyAreas = new Subject[10];

//the rest of the Student class
}

Manas Kumar Meher on September 6th, 2011 2:00 pm

Nice one.

anbalagan on September 8th, 2011 5:59 am

This website is very useful . but i need short notes and examples for full oops concepts in c++.

Meera on September 9th, 2011 11:04 am

material is good but it explain with diagram then it is more effective for readers

vicky on September 18th, 2011 4:31 pm

Nice explanation. It would recommend to add few more real world examples that could help to understand it more easily.

shahan on September 18th, 2011 10:46 pm

Nice explanation on the topics of association, aggregation and composition with quite undrestandable language.

Chandraprakash on September 24th, 2011 3:27 am

Excellent, A quick glance with best understanding. Keep it up

Nagendra on September 25th, 2011 9:19 am

very helpful and easy 2 understand
Thank you

Surabhi on September 27th, 2011 5:35 am

You mentioned in this article – Abstraction is specifying the framework and hiding the implementation level information. Abstraction never says about hiding anything. Let’s take an Example of Employee with Super class and Manager and Salesman bening subclass of Employee. So if Employee may provide various implentation in common, but can’t have implementation for calculateBonus because this is fully dependet on nature of employee subclass, and hence Employee would have calculateBonus as abstract. So overall, abstraction is isolation of common essentioal behaviour and supress unimportant behaviours. Abstraction never meanse hiding anything. Hiding of implementation from accidental access is Encapsulation.

Thanks
Arun Deo

Arun K Deo on September 30th, 2011 5:08 pm

This is very nice explanation with the examples. It helps to crystal clear the things, that have very confusing boundary among them.

Akansh Bhatnagar on October 2nd, 2011 6:13 am

Its really nice.I was always get confused for these relationship association, aggregation and composition.Thanks a lot

Anonymous on October 2nd, 2011 8:29 pm

its really nice. keep going its really helps lot,

Thanks,
Prabhu.

Prabhu on October 4th, 2011 8:35 am

Wonderful… Very nice simple & easy to understood details which might be very complex for beginner……

Appreciate your effort….

Anonymous on October 9th, 2011 9:28 am

Nice Article on relationships

Love Taneja on October 9th, 2011 10:43 am

really it’s a nice content that you provide through this web. It removes all of my confusion.
thanks

Sandeep verma on October 13th, 2011 1:37 pm

Thanks guys for all your overwhelming comments and support.

Joe on October 14th, 2011 7:21 am

Sir, i want to briefly explanation of attributes……..

mallesh on October 14th, 2011 5:26 pm

thank u soo much, nice explanation , i really want this :)

arslion on October 16th, 2011 9:06 pm

Very nice post.. i have never experienced such
simple examples for explaining such complex terms like aggregation and composition
i thought so far.. Keep posting…

abi on October 17th, 2011 10:39 am

Best article on association aggregation composition

Srividya on October 17th, 2011 11:58 am

Thanks…

Ganesh Kar on October 20th, 2011 10:44 am

Hi, may I seek a clarification about generalization concept. Let’s say I have a two kinds of staff, Manager and Supervisor and both have the same attributes (name,contact number). So, is it possible to say that this has a generalization relationship – Staff as the superclass, Manager and Supervisor as its subclasses althought there’s no difference in terms of the attributes between Manager and Supervisor?

CT on October 24th, 2011 10:23 am

Thanks you very much for share good knowledge for me .

cheng kuyleang on October 24th, 2011 3:30 pm

A very good explanation..I never seen before like this type explanation about this concept

Anonymous on October 24th, 2011 4:01 pm

very nice artical!!

mayur bhalekar on October 24th, 2011 6:52 pm

Very nice explanation about class diagram terms…

Arvind kumar on October 28th, 2011 1:05 pm

Questions
1. Identify and briefly explain the objectives, classes, method and attributes for a hotel reservation system.
2. Draw a use case diagram to represent a hotel reservation system.
3. Draw a class diagram that models hotel reservation system data structure, clearly representing the objects, classes, associations, generalization and aggregations.

Thanks

Imrana Aminu Muhd on October 30th, 2011 2:18 pm

Questions
1. Identify and briefly explain the objectives, classes, method and attributes for a hotel reservation system.
2. Draw a use cases diagram to represent a hotel reservation system.
3. Draw a class diagram that models hotel reservation system data structure, clearly representing the objects, classes, associations, generalization and aggregations.

Thanks

Imrana Aminu Muhd on October 30th, 2011 2:34 pm

Really simple and excellent explanation. Easy to understand for beginners…!!!

Subir on October 30th, 2011 5:49 pm

Very good explanation

siva on October 31st, 2011 10:31 am

Superb Explanation…Keep It Up!

Anonymous on November 1st, 2011 5:52 am

dddddddd

zx on November 2nd, 2011 3:04 pm

thanks friend

Anonymous on November 3rd, 2011 4:16 pm

identify in detail association and aggregation

jay on November 4th, 2011 4:36 pm

Nice one
thank you

bluepicaso on November 6th, 2011 1:26 pm

Gud NOtes

Anonymous on November 8th, 2011 9:12 am

crystal clear dude.

Anonymous on November 8th, 2011 7:19 pm

Thanks..!! M sure your examples gonna help in tomorrows exam.

Sanchit on November 9th, 2011 8:14 pm

@Sanchit

I feel very happy when I get to know that my blog helps a student.

More than anything, I maintain this to help students succeed in their exams / interviews.

Joe on November 10th, 2011 4:56 am

A book CAN exist without a library…. Incorrectly quoted…… Rather a library CANNOT exist without a book….

Nitin on November 10th, 2011 10:30 am

Very nice narration.

Baji on November 10th, 2011 12:00 pm

Write an example program each showing dependency,
generalisation relationships in JAVA

Anonymous on November 13th, 2011 4:32 am

Thanks for the useful info

Animesh on November 15th, 2011 10:36 am

Nice explanation. If you would provide with one example all the above along with diagams that would be excellent.

dp on November 15th, 2011 10:50 am

Good article. One of the questions mentioned above, was related to manager,supervisor and staff. Certainly there is a generalization relationship with Staff as superclass and manager and supervisor classes are subclasses inheriting from Staff. Though attributes could be same in manager and supervisor when it comes behaviour(methods) manager and supervisor classes are specialized with inheriting the generic class i.e., Staff.

Chandra on November 15th, 2011 3:33 pm

Lun smjhaya h tounae

asdr on November 18th, 2011 4:25 am

Thank’s man for this article, i found it very helpful for me. Am studying SCJA and i was looking for any comprehensive material for UML basics like this one.

Mohamed on November 18th, 2011 7:25 am

its nice. very simple defnation. easy to understand.

Anonymous on November 18th, 2011 10:29 am

Awesome post!!!Keep it up.

syed on November 22nd, 2011 8:21 pm

Nice article on UML concepts. The content of the article is very simple to understand. Thanks.

Ravikumar on November 25th, 2011 6:12 am

Brother your website have beautiful GUI. Keep it up, and keep it UP.

Muhammad Asad saleem on November 27th, 2011 7:16 pm

Nice Post, Hope to get same clarity on design patterns.

Thank you.

jayant on November 28th, 2011 8:41 am

very nice…nd thanx..

Anonymous on November 28th, 2011 6:53 pm

NUMBER # 1
Very Clear Topic About the English WORDS “Aggrega…composi…reali…generai….etc etc…etc”

But how can i understand when i want to implement your dictionary details (read NUMBER # 1) on practicing programming ???
specially JAVA…

Raajpoot on November 29th, 2011 6:49 pm

Awesome notes.

Really helpful

Anonymous on December 1st, 2011 6:28 am

Awesome…….really good way to understand newcomers!!

Pankaj on December 1st, 2011 5:37 pm

Simple & Clear Explanation for the beginners.

Thanks!!

Nambirajan on December 2nd, 2011 10:32 am

this is simple way to understand any definition

sandeep sonali on December 3rd, 2011 7:18 am

Awesome…….really good way to understand newcomers!!

Thank you.

amulni on December 6th, 2011 9:05 am

easy way to understaing.
thanks….

lorisa on December 6th, 2011 9:23 am

Clean & clear explanation. Thanks Joe.

Ravi on December 6th, 2011 10:34 am

really nice

shiv yadav on December 8th, 2011 5:01 am

Simplysuperb, lots of information with very simple words.

praneeth on December 9th, 2011 5:30 pm

Wonderful Job Joe. Keep it up.

TSKarthic on December 13th, 2011 6:50 pm

really clears the confusion.

Anonymous on December 16th, 2011 3:32 pm

Nice way of information.
Thanks………………

Rohit Ojha on December 20th, 2011 3:51 pm

Hi,

Superb Explanation sir .

Pradip Lavania on December 22nd, 2011 5:47 am

Really good man easy to understand

Nikhil on December 25th, 2011 11:26 am

really helping me a lot….
u r dng a great work.Thank You

venky on December 26th, 2011 2:08 am

is it nice…

i have got some idea…

thanks ..

Ayyappa Dasam on December 27th, 2011 1:46 pm

you have to increase the paragraph

Anonymous on January 2nd, 2012 4:13 am

very nice explanation.

PINTU on January 5th, 2012 8:04 am

neat and clear description dude…

Anonymous on January 6th, 2012 9:25 am

Hi.. Useful explanation and easy to understand. thankyou

Srividya on January 7th, 2012 1:11 pm

This is good post. thanks a lot

Anonymous on January 7th, 2012 3:54 pm

Its really post .

Vidhi Jain

vijain on January 8th, 2012 4:59 pm

Very nice…Thanks

Anonymous on January 9th, 2012 8:23 am

best for beginner….like me
thank you sir

soshiv on January 9th, 2012 2:01 pm

explained in very effective n simple way

vishwajeet awasthi on January 10th, 2012 2:59 pm

explained in very effective n simple way, doing a great job

vishwajeet awasthi on January 10th, 2012 3:00 pm

please change the background color, so that it would be more readable

Anonymous on January 10th, 2012 4:38 pm

Thank you very much sir. It is ow-some….

kundan on January 16th, 2012 10:57 am

Good to start for beginners and experienced juggling between these concepts.

Anonymous on January 19th, 2012 6:59 pm

Thanks a lot , good explanation with easy example ..

soumava on January 21st, 2012 12:58 pm

Thanks :Great people explain concept in the simple and easy understandable way.

Madappa.i

Anonymous on January 23rd, 2012 11:59 am

that was a very good explanation. simple and easily understandable…

Anonymous on January 25th, 2012 9:17 am

thanks. great for beginners

Anonymous on January 26th, 2012 9:08 am

Thanks It helps to clear my fundamental

Vikas on January 31st, 2012 7:38 pm

all clear ………very gud job !!!!

raman prasher on February 3rd, 2012 12:21 pm

its really very usefull and understandable

awanish on February 3rd, 2012 1:03 pm

I never thought this small and simple article would become a great hit.

I learn that, more and more we make the technology simple people like it.

Joe on February 5th, 2012 5:32 pm

Quike guide to understand the basics…great work…thanks a lot…

Anonymous on February 5th, 2012 11:39 pm

nice explanation

Alkesh on February 6th, 2012 12:21 pm

Good presentation.

jagan on February 7th, 2012 5:57 pm

Very good explanation. Thank you

gopal on February 7th, 2012 11:35 pm

thanku its very easy to understand and very easy explanation

lady dabang on February 9th, 2012 10:41 am

thanq so much….its very nice …

madhu on February 10th, 2012 9:32 am

awesome

samy on February 10th, 2012 11:37 am

please explain more sir,with example..

himanshu on February 11th, 2012 8:32 pm

Good Summary. Thanks a lot!
A simple class diagram to explain the direction of the relationship would be great, if can be added

YoFo on February 13th, 2012 7:06 pm

nice explanation. very useful. thanks

priya on February 14th, 2012 2:22 pm

very nice explanation

Juhara on February 16th, 2012 1:39 pm

Nice explanation of the terms…

Rahul on February 17th, 2012 9:36 am

nice definitions :)

Jayshree on February 17th, 2012 2:38 pm

pallabi baruah wake up!!!!listen to ur tech lead!!!

X on February 17th, 2012 2:42 pm

very nice explanation! keep it up

Anonymous on February 18th, 2012 2:20 pm

very nice explanation! keep it up

Shakeel on February 18th, 2012 2:20 pm

very good.

Shakeel on February 18th, 2012 2:21 pm

Goog Explanation. Keep going….

Anonymous on February 18th, 2012 3:11 pm

Thanks this helps !

raghuraj on February 20th, 2012 9:10 pm

thanks this really gives the clarity of this topic

manu on February 22nd, 2012 8:26 pm

thank u very much yar

guru on February 22nd, 2012 11:24 pm

Thanks you very much yar

Anonymous on February 27th, 2012 11:31 am

very nice and better explain with subject examples also,its nice but iam feeling

uma maheswari on February 29th, 2012 12:59 pm

Thanks this helps !

abhishek on February 29th, 2012 3:58 pm

pls write about specialization also

Anonymous on March 1st, 2012 5:20 pm

very nice………
thank u so much

madhuri on March 1st, 2012 5:51 pm

can you please explain opps concept in aquarium system? Means how can i explain an aquarium using OOPs

Prajna on March 4th, 2012 10:23 am

perfect..!!

jeeva on March 5th, 2012 1:16 pm

One of good artical and understandable.

Santosh on March 6th, 2012 12:06 pm

Great and a very simple way to explain a confusing subject. Thanks a lot for this Post.

Rupesh on March 8th, 2012 9:50 pm

GOOD and NICE and SIMPLE Explanation……..

SAGAR_D on March 9th, 2012 9:33 pm

Thanks for your inputs

sabarish on March 13th, 2012 2:35 pm

good site thanks

sourabh singhai on March 14th, 2012 10:48 pm

Thanks very much nice information about Generalization, Aggregation, Association, Composition, Dependency,, only one time i have refereed to it but absolutely i got******

Mohammad Arif on March 14th, 2012 10:52 pm

Looking forward to your next post like the same******* understandable

Mohammad Arif on March 14th, 2012 10:55 pm

Nice one

Ankita on March 15th, 2012 5:28 pm

the content is really very good..

Rashmi Varshney on March 16th, 2012 7:17 pm

nice information thank u logical examples have been provided

prema on March 17th, 2012 12:18 pm

Really useful for beginners.
Thanks,

Dilip on March 20th, 2012 4:18 pm

good information and very useful to the beginners .

thanks,

swamy on March 21st, 2012 12:40 pm

Good Information..

It will give an basic idea to all who dont have base knowledge on these.

From
Krs Rajasekhar

Anonymous on March 22nd, 2012 12:53 pm

Good Information..

It will give an basic idea to all who dont have base knowledge on these.

From
Krs Rajasekhar

Rajasekhar on March 22nd, 2012 12:54 pm

thanks a lot, you helped us completing our assignment. :)

Abhishek on March 25th, 2012 6:26 pm

Good explanations….

VVV on March 26th, 2012 3:08 pm

Good explanations….

VVV on March 26th, 2012 3:08 pm

Nice explanation yaar

Gajendra on March 26th, 2012 11:06 pm

Very nice content. I like it. The best site and very comprehensiveness information I ever found.

zeeshan on March 27th, 2012 5:06 pm

Simple and easy understandable writing. thanks alot for your effort.

Shameer on March 28th, 2012 12:17 pm

Simple and very clear to understud thaks

Anonymous on March 29th, 2012 11:51 am

Woow..very Nicely explained…

Raveena Sharma on March 29th, 2012 2:53 pm

very nice

satya on March 30th, 2012 5:04 pm

Sir what is the difference between generalization and specialization ??????

Anonymous on March 30th, 2012 6:36 pm

good article..

prasad on April 1st, 2012 7:46 pm

give me answer plz..
Justifying the statement ,”inheritance is a special case of Generalization”.

Ravi on April 2nd, 2012 12:07 am

Thankyou… nice article.

Vidhya on April 4th, 2012 10:53 am

Clean and clear explanation. Thanks a lot.

kamal on April 5th, 2012 12:51 pm

Thanks a lot for such an easy explanation. Examples are also easy to understand and correlate.

SanjayK on April 6th, 2012 9:25 am

Thanks a lot Joe, Very Useful information with simple language and good examples.

Ganesh on April 6th, 2012 11:05 am

nice explanation..

Anonymous on April 6th, 2012 3:09 pm

Nice Article Joe

Pavan on April 7th, 2012 3:39 pm

I love your blog and find helpful…thanks for your great passion! You people make the world really great!

Abdul Hadi Ibrahimi on April 8th, 2012 9:59 pm

Nice and very helpful Article….

Ashutosh on April 8th, 2012 10:05 pm

Thank you… nicely explained..!

Jyotsna on April 9th, 2012 9:41 am

nice simple article

Anonymous on April 10th, 2012 8:39 am

The Post would become more clear if you difine these concepts in terms of object’s life Cycle.

Vishal on April 13th, 2012 12:24 pm

Thanks
Nicely Explained

umadatt on April 14th, 2012 8:54 am

Very useful and complete

Yogesh Dhawale on April 17th, 2012 3:19 pm

Best explained concept across the internet .
I was confused about those terms before reading these article . Thanks a lot. It’s helps me a lot.Will go through to other article.

Asraful forhad chowdhury on April 17th, 2012 11:04 pm

Nice one Man!!

m on April 18th, 2012 12:39 pm

Good article.

ruby on April 18th, 2012 7:00 pm

thank you

bismita on April 18th, 2012 8:39 pm

First i was confused but now i am confidece
Thanks alot

Bablu on April 19th, 2012 10:58 am

very nice.. Thanks….

saroj on April 19th, 2012 3:54 pm

thanks for that and its very easy language

shrikant on April 20th, 2012 2:04 am

Very good explaination

Anant Choubey on April 21st, 2012 6:12 pm

good loooking web site sir…

Amit Don on April 24th, 2012 11:34 am

thanks ..this is very good artical

riyaz on April 24th, 2012 12:07 pm

help me alot….thks

baburao on April 24th, 2012 12:42 pm

Thanks for the explination. If a sample code is given it will become even more better.

Thanks in advance

Prem

Anonymous on April 24th, 2012 3:08 pm

Thanks for your good job…

Anonymous on April 27th, 2012 9:44 am

good explaination joe, thanks

ajeet on April 28th, 2012 10:22 am

good explaination joe, thanks

ajeet shroti on April 28th, 2012 10:23 am

sir,please give your mail id for further refrence..

Anonymous on April 29th, 2012 11:22 am

ijust hv a doubt about composition ,as a example “A circle is composed of points”.
then i think points are exist without circle ,,but according to u points r not exist without circle ..plz explain.?

Ganesh on April 29th, 2012 12:27 pm

good answer and example

seema gupta on April 29th, 2012 8:49 pm

very Clear n nice explaination …
really confused before reading this article…
thank you!!

keep it up !!

nisha on May 1st, 2012 9:58 am

very nice content to start
thanks

suryaSingh on May 2nd, 2012 10:43 am

nice one

swaminathan on May 2nd, 2012 4:08 pm

Hi Joseph,

This site is of great use for a java programmer like me.

Thank you so much.

Lee on May 3rd, 2012 5:49 pm

really nice to see this site…

Anonymous on May 3rd, 2012 10:06 pm

شكرا
Thanx

K.Saad on May 5th, 2012 7:10 pm

really nice. thanks!

Yoon on May 6th, 2012 7:00 am

very lucid and helpful. thank you.

nitish on May 8th, 2012 1:55 am

In defining the Composition in top of page, I think the sentence should be
“…, if the container object cannot exist without the existence of contained object, then it is called composition”
instead of “…, if the contained object cannot exist without the existence of container object, then it is called composition”

Hikmat Jaber on May 8th, 2012 2:08 am

I Think U are right Hikmat.

Priyabrat on May 8th, 2012 3:10 pm

Good Article worth Reading. Nice Job!!!

N.Bala on May 10th, 2012 7:27 am

Super explanation

Anonymous on May 12th, 2012 4:05 pm

Nice article.
Adding some example, hope till will support the article.
There are four kinds of Class relationships

Association: uses a
Ex:a Class Man uses a Class Pen
Aggregation: has a
Ex:a Class Man has a Class Car ( Car is still there when Man die )
Composition: owns a
Ex:a Class Man owns a Class Heart ( When Man die, Heart die )
Inheritance: is a
Ex:a Class Man is a Class Human ( Man is a Human )
A relationship between classes of objects

Inheritance>Composition>Aggregation>Association

Pratik Jain on May 12th, 2012 8:28 pm

excellent. i best site i found till now for jAVA.

Ballem on May 17th, 2012 4:39 pm

its my OOMAD exam today and these definitions really made me relaxed regarding their easy understandibility.
Thnxxxxxx buddyyyyy

Anonymous on May 18th, 2012 3:29 am

Could you please share with java code examples.

A implements B is realization
A extends B is generalization

AM I right?

manojbharal on May 19th, 2012 3:02 pm

Awesome

pal on May 21st, 2012 10:13 am

sir…you should use email validation in comment box…..
and your site content is awesome….i loved it….

Parshant on May 22nd, 2012 5:44 pm

Sir…it clearly differentiated the terms for a novice programmer.

Vijay Arige on May 23rd, 2012 12:46 pm

Thanks!!:) It was really worthy.. Short & to the point.. Clarifying examples played vital role in understanding.. ‘Thanks’ once again..
_Js

Jigar on May 25th, 2012 3:07 am

Clear explanation with simplicity!
Thanks

Minesh on May 25th, 2012 5:27 pm

Really a useful stuff to understand object relation ship.

Vijay on May 26th, 2012 2:39 pm

Content is very good and the site is also looking so good keep it up sir,…

Hakkim on May 27th, 2012 8:20 pm

very helpful and easy understanding

jpnaidu on May 28th, 2012 8:18 pm

it’s really good artical…..

krish on May 29th, 2012 9:37 am

thanks ji

shukla ji on May 29th, 2012 3:51 pm

hii thanks for information
kamal gaba

Anonymous on May 30th, 2012 2:40 pm

excellent clarified wit d example

Satyabrata on May 30th, 2012 3:41 pm

Simply superb
Thank You

Mayank Kukadia on May 30th, 2012 6:26 pm

very nice it help me for my next interview :)

arsalan on June 1st, 2012 10:17 pm

clearly understand, very good writing. Thank you.

loiletan90 on June 3rd, 2012 2:29 pm


Email:

about
I am Joe, author of this blog. I run this with loads of passion. If you are into java, you may find lot of interesting things around ...more about me. Google+
java badge
Home