  | Mailing List | | Home | | Forum Home | | JBoss - Java Application Server | | Struts - A MVC web framework | | Tomcat - JSP/Servlet container | | iText - An open source PDF Java Library | | JDOM - JDOM XML Parser | | J2EE - A mailing list for Java(tm) 2 Platform, Enterprise Edition | | J2EE Pattern - An interest list for Sun Java Center J2EE Pattern Catalog | | Servlet - A mailing list for discussion about Sun Microsystem's Java Servlet API Technology | | JSP - A mailing list about Java Server Pages specification and reference | |
Struts & Hibernate
|
|
|
  | | | Association vs Dependency (Offbeat) | Association vs Dependency (Offbeat) 2003-12-30 - By ashraf galal
Back <html><div style='background-color:'><P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN style="COLOR: black"><FONT size=3><FONT face="Times New Roman">Hi Vipul <?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /><o:p></o:p></FONT></FONT></SPAN></P> <P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN style="COLOR: black"><FONT size=3><FONT face="Times New Roman">Dependency example: <o:p></o:p></FONT>< /FONT></SPAN></P> <P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN style="COLOR: black"><FONT size=3><FONT face="Times New Roman">If you have a java class like: <o:p></o:p>< /FONT></FONT></SPAN></P> <P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN style="COLOR: black"><FONT size=3><FONT face="Times New Roman"> <o:p></o:p></FONT></FONT></SPAN></P> <P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN style="COLOR: black"><FONT size=3><FONT face="Times New Roman">Public class<SPAN style="mso-spacerun: yes" > </SPAN>abc implements<SPAN style="mso-spacerun: yes"> </SPAN >abcController<o:p></o:p></FONT></FONT></SPAN></P> <P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN style="COLOR: black"><FONT size=3><FONT face="Times New Roman"> <o:p></o:p></FONT></FONT></SPAN></P> <P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN style="COLOR: black"><FONT size=3><FONT face="Times New Roman">{<o:p></o:p></FONT></FONT></SPAN></P> <P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN style="COLOR: black"><FONT size=3><FONT face="Times New Roman">?.<o:p></o:p></FONT></FONT></SPAN></P> <P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN style="COLOR: black"><FONT size=3><FONT face="Times New Roman">}<o:p></o:p></FONT></FONT></SPAN></P> <P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN style="COLOR: black"><FONT size=3><FONT face="Times New Roman"> <o:p></o:p></FONT></FONT></SPAN></P> <P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN style="COLOR: black"><FONT size=3><FONT face="Times New Roman">class abc implements abcController (interface) this is a sort of dependency.<o:p></o:p></FONT></FONT></SPAN></P> <P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN style="COLOR: black"><FONT size=3><FONT face="Times New Roman"> <o:p></o:p></FONT></FONT></SPAN></P> <P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN style="COLOR: black"><FONT size=3><FONT face="Times New Roman">Also dependency between packages.<o:p></o:p ></FONT></FONT></SPAN></P> <P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN style="COLOR: black"><FONT size=3><FONT face="Times New Roman"> <o:p></o:p></FONT></FONT></SPAN></P> <P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN style="COLOR: black"><FONT size=3><FONT face="Times New Roman">If these examples are not clear let me know and I can provide more examples.<o:p></o:p></FONT></FONT></SPAN></P> <P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN style="COLOR: black"><FONT size=3><FONT face="Times New Roman"> <o:p></o:p></FONT></FONT></SPAN></P> <P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN style="COLOR: black"><FONT size=3><FONT face="Times New Roman">The answer to your second question is yes class Address can stand alone without class Customer, and can exist without class Customer but class Customer cannot exists without class Address exists. <SPAN style="mso-spacerun: yes"> </SPAN></FONT></FONT><o:p></o:p></SPAN></P > <P><BR><BR></P><BR><BR><BR> <DIV>Ashraf Galal <BR>(416)804-8359</DIV>>From: "Gupta, Vipul" <VIPUL.GUPTA @(protected)>>Reply-To: An interest list for Sun Java Center J2EE Pattern Catalog <J2EEPATTERNS-INTEREST@(protected)>>To: J2EEPATTERNS -INTEREST@(protected) >Subject: Re: Association vs Dependency (Offbeat) > ;Date: Tue, 30 Dec 2003 11:00:54 +0530 > >Hi Ashraf, > >CAn u provide a simple example for dependency as well. > >Secondly, In Association - does it mean the instance of the class can be >created independently. >Meaning, in the example >Example: > >Public class customer > > { > > .... > > Public Address homeAddress; > > > > ...... > > } > > > >public class Address { > >..... > >} > > > >Does it mean that the Address class can exist without the customer class or >Address class will exist only if Customer class is there. > > > >Regards > >Vipul > >-- ---Original Message-- -- >From: ashraf galal [mailto:ashrafwg@(protected)] >Sent: Tuesday, December 30, 2003 10:52 AM >To: J2EEPATTERNS-INTEREST@(protected) .SUN.COM >Subject: Re: Association vs Dependency (Offbeat) > > > > ;Actually, these concepts is UML not a java. You are quite well > ;understanding but I would like to illustrate the difference between them and >give an example. > > > >Dependency : > >Anytime a class uses another class in some fashion, a dependency exists >between the two. > >A dependency exists of a class: > >- has a reference to an object directly. > >- Has a local variable based on another class. > >- Has a reference to an object indirectly via some operation >parameters. > >- Uses a class's static operation > >Also there are dependency between packages. > > > >Association: > >There is two types of association, unidirectional and bi-directional >associat ions. > >Unidirectional association implies that an object of the class may invoke >methods on the other class. > >In java, this manifest itself as an instance variables on the class that may >invoke methods. > > > >Example: > >Public class customer > > { > > .... > > Public Address homeAddress; > > > > ...... > > } > > > >public class Address { > >..... > >} > > > >bi-directional association means that either object in the association may >invoke methods on other. > >In java, this results in an instance variable on each class based on the >type of the other class. > > > >Example; > >Public class Team > > { > > LinkedList teamPlayers = new LikedList(); > > teamPlayers.add(new teamPlayer(...)); > > ......... } > > > > public class teamPlayer { > > Team memberOf; > > .... > > } > > > >Ashraf Galal >(416)804-8359 > >From: ShriKant Vashishtha > ;Reply-To: An interest list for Sun Java Center >J2EE Pattern Catalog >To: J2EEPATTERNS-INTEREST@(protected) >Subject: >Association vs Dependency (Offbeat) >Date: Sun, 28 Dec 2003 14:17:03 -0800 > > >Hi All, > >I am slightly confused in finding the difference between >association and dependency. > >For me, whenever the variable is intialized >at a local scope or passed as a parameter in a method, its denoted as >dependency. However, for association, I believe, the object needs to be on >global scope (as an instance variable). However, I rarely use any object at >a global scope, unless I know that it is used for maintaining the state of >class or need to be used across different methods. So most of the time, I >end up with dependency . > >Am I missing something over here. > >Thanks > >-ShriKant > > >-- ---- --- ---- -- ---- ---- ----- >Do you Yahoo!? >Protect >your identity with Yahoo ! Mail AddressGuard > > >============================================== ====================== > >Companion Site: http://www.corej2eepatterns.com >J2EE BluePrints: >http://java.sun.com/blueprints/corej2eepatterns > ;List Archive: >http://archives.java.sun.com/archives/j2eepatterns-interest .html > >Unsubscribing: email "signoff J2EEPATTERNS-INTEREST" to > ;listserv@(protected) > > __ __ > >MSN 8 helps ELIMINATE E-MAIL <HTTP: 2743??PS="" 8HMBENCA g.msn.com>VIRUSES. >Get 2 months FREE*. >===== =============================================================== >Companion Site: http://www.corej2eepatterns.com J2EE BluePrints: >http://java.sun.com /blueprints/corej2eepatterns List Archive: >http://archives.java.sun.com /archives/j2eepatterns-interest.html >Unsubscribing: email "signoff J2EEPATTERNS-INTEREST" to >listserv@(protected) > > &g t;==================================================================== > ;Companion Site: http://www.corej2eepatterns.com >J2EE BluePrints: http:/ /java.sun.com/blueprints/corej2eepatterns >List Archive: http://archives.java .sun.com/archives/j2eepatterns-interest.html >Unsubscribing: email "signoff J2EEPATTERNS-INTEREST" to listserv@(protected) </div><br clear=all><hr>STOP MORE SPAM with <a href="http://g.msn.com/8HMBENCA/2728??PS=">the new MSN 8 </a > and get 2 months FREE* </html> ==================================================================== Companion Site: http://www.corej2eepatterns.com J2EE BluePrints: http://java.sun.com/blueprints/corej2eepatterns List Archive: http://archives.java.sun.com/archives/j2eepatterns-interest.html Unsubscribing: email "signoff J2EEPATTERNS-INTEREST" to listserv@(protected)
|
|
 |