• Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

Master Exam Error

 
Duran Harris
Ranch Hand
Posts: 608
Eclipse IDE Spring Ubuntu
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi all...

There seems to be a discrepancy between a question in the 1st Master Exam and the 3rd Master Exam.
The question is of the type:Select all that apply and is regarding HAS-A relationships.
I know that it is Question 4 on the 3rd Exam,but I forget what the number of the question on the 1st Exam is.

Anyways,the reference for one states that:

-HAS-A relationships are always defined with instance variables

whilst the other reference states that:

-HAS-A relationships may be defined with class variables as well

Please clarify
 
Ankit Garg
Sheriff
Posts: 9528
32
Android Google Web Toolkit Hibernate IntelliJ IDE Java Spring
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Well I think only the first option is correct.

-HAS-A relationships are always defined with instance variables

Read this for more details
 
Punit Singh
Ranch Hand
Posts: 952
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
But Ankit masterexam has this answer:

-HAS-A relationships may be defined with class variables as well

So what to choose in final exam, if we get this question.


Master exam says this is also a has-a relationship.
 
Bindu Lakhanpal
Ranch Hand
Posts: 171
Flex Java
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
A class variable simply means,one copy shared by all objects.
So all Car objects will have (same) Engine object.
So, Car has an Engine must be true( even if all Car objects have the same Engine object).
 
Ankit Garg
Sheriff
Posts: 9528
32
Android Google Web Toolkit Hibernate IntelliJ IDE Java Spring
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
daisy lakhanpal wrote:A class variable simply means,one copy shared by all objects.
So all Car objects will have (same) Engine object.
So, Car has an Engine must be true( even if all Car objects have the same Engine object).


But then it will be such that all cars have the same engine. So I don't think has-a relationship can be represented by static fields...
 
Duran Harris
Ranch Hand
Posts: 608
Eclipse IDE Spring Ubuntu
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Yes..that makes since...if only one car can have an engine then we definitely can't define the relationship as
CAR HAS-A ENGINE.That would be incorrect.Thanks everybody
 
Punit Singh
Ranch Hand
Posts: 952
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator


But what about this example? Do not all Honda Car will share a same HONDA logo?
What will you say this relationship?
 
Ruben Soto
Ranch Hand
Posts: 1032
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
This needs official clarification. I am inclined to believe that static variables of the class involve a Has-A relationship also. But I can see how this can be construed differently. So, until we get an official answer, I will remain in suspense.
 
Duran Harris
Ranch Hand
Posts: 608
Eclipse IDE Spring Ubuntu
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Me too
 
Punit Singh
Ranch Hand
Posts: 952
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
So a right example could confuse peoples. Right na!!!

Please any sheriff or author clear this doubt :-(
 
Ruben Soto
Ranch Hand
Posts: 1032
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Any official word on this?
 
Sachin Adat
Ranch Hand
Posts: 213
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
In K&B
class A Has-A B if code in class A has a reference to an instance of class B.

It doesn't mention static variable, but still official word needed....... :?:
 
Punit Singh
Ranch Hand
Posts: 952
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Sachin Adat wrote:
In K&B
class A Has-A B if code in class A has a reference to an instance of class B.

It doesn't mention static variable, but still official word needed....... :?:


Means you wanna say:

-HAS-A relationships may be defined with class variables as well
 
kshitij dogra
Ranch Hand
Posts: 39
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
yup,

has-a relationship can exist for both instance and class variables. I couldn't find any official statements segregating the two though..
 
Sachin Adat
Ranch Hand
Posts: 213
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Now this should be official
marc weber wrote:"I would say that static variables do constitute a HAS-A relationship.
Note that HAS-A is typically contrasted with IS-A. That is, composition vs. inheritance. Whether a field is associated with the class or with an instance, it's still composition."
here http://www.coderanch.com/t/269872/Programmer-Certification-SCJP/HASA#1253435


Maybe marc wanted us to search for it..........
 
Bert Bates
author
Sheriff
Posts: 8900
5
  • Likes 1
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
While this is a bit murky, I think we're going to agree that statics CAN be used in has-a relationships. It's possible that we'll find a Java authority that changes our mind, but we haven't yet.

The good news is that I'm pretty sure you won't find this distinction on the real exam.

hth,

Bert
 
Ruben Soto
Ranch Hand
Posts: 1032
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Maybe the reason why we didn't get any official response is that this concept is a little murky and not well defined. Notice that Marc is just saying that he "would say", he is not stating any official position from the Sun SCJP test creators. Any way to reach these folks? If not, I'm afraid we'll have to pray that this type of question is not in the exam.

EDIT: I guess Bert replied as I was replying. Interesting that he also used the word "murky" And yes, Bert's response sounds reasonable. Thanks for responding, Bert.
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic