public class B {
public String getMe()
{
return "Some";
}
}
Run Code Online (Sandbox Code Playgroud)
假设我有一个上面的类,我们应该通过哪些参数决定使用什么?是一个或有一个关系?
有个
public class A {
public static void main(String args[])
{
B b = new B();
System.out.println(b.getMe());
}
}
Run Code Online (Sandbox Code Playgroud)
要么
public class A extends B
{
public static void main(String args[])
{
A b = new A();
System.out.println(b.getMe());
}
}
Run Code Online (Sandbox Code Playgroud)
Yoc*_*mer 23
取决于逻辑关系.它只需要有意义.
例:
让我们说你有动物课.
所以你有这些课程:动物,狗,猫,豹,毛皮,脚
猫与狗是一种动物.
豹是一只猫.
动物有毛皮,脚.
简而言之:
IS关系意味着您继承并扩展基类的功能.
HAS一个关系意味着该类正在使用另一个类,因此它将它作为成员.
M.S*_*eer 17
有四种类型的关系可能:
用法:它是两个类中最弱的关系,它意味着一个类可能在方法参数中显示为一个类型,或者在代码内部使用.
在你的例子中,如果A有一个B类型的字段,那么它应该是聚合(HAS A).但是如果它只是在内部创建了要在代码中使用的B的实例,并且当范围结束时该对象从内存中处理,则它既不是IS A也不是A.它只是一种使用关系.