| |home| |
Object-Oriented Programming ConceptHas-a Relationship |
Last lesson, we learnt that OOP has two relationships. In this lesson, we will focus on has-a relationship, which is also called object composition.
Let's make a Pizza. Pizza is Mary's favorite food. Pizza can be designed as an object. Every Pizza has ingredients. Pizza has a topping. Pizza has sauce like tomato sauce. Do you pay attention to the boldfaced has? If Pizza is an object, topping is a member field of object Pizza. The relationship between Pizza and topping is "has-a" relationship. So does the sauce. "has-a" relationship in a object is called member field of an object.
Let's describe it in Java code.
public class Pizza {
private int topping;//has-a relationship-->member field
private String sauce;
public int getTopping(){
return topping;
}
public void setTopping(int howMany) {
this.topping = howMany;
}
public String getSauce() {
return sauce;
}
public void setSauce(String somesSauce) {
this.sauce = someSauce;
}
}
|
Assume that you understand Java basic code and be able to recognize that Pizza is an object and created in the standard Java coding convention.
Note that we don't create a constructor for the Pizza class, the compiler will create one called default constructor for you. The default constructor is a constructor without parameter list. We use getter/setter methods to make these states or fields accessible.