作者GhriS (童贞肥宅)
看板java
标题[问题] 有关has-a与is-a的疑问
时间Fri Jan 19 15:13:25 2018
小弟最近在准备考java的证照
遇到题有关has-a is-a的问题
-------------------------------------------
import java.util.*;
interface Glommer {}
interface Plinkable {}
class Flimmer implements Plinkable {
List<Tagget> t = new ArrayList<Tagget>() ;
}
class Flommer extends Flimmer {}
class Tagget {
void doStuff() { String s = "yo"; }
}
-------------------------------------------
Which three statements concerning the OO concepts "is-a" and "has-a" are true?
-------------------------------------------
A) Flimmer is-a Plinkable.
B) Flommer has-a Tagget.
C) Flommer is-a Glommer.
D) Tagget has-a String.
E) Flommer is-a Plinkable.
F) Flimmer is-a Flommer.
G) Tagget is-a Plinkable.
--------------------------------------------
A, E 没甚麽问题 但第3个实在不知道要选B还D
我看网路上解答有的是B 有的是D
关於D我有查到一篇是有把方法区域变数也算has-a
但B我就没查到甚麽东西
不知道有没有人可以替我解惑的
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 123.193.209.48
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/java/M.1516346008.A.B4A.html
1F:推 crowd7: 觉得是B. 区域变数应该不能用has a..它不能保持物件状态 01/19 16:10
小弟也是选B 区域变数也算的话 感觉这has-a也太广了
※ 编辑: GhriS (123.193.209.48), 01/19/2018 16:57:34
2F:推 longlongint: 继承类是is a, member 类是 has a 01/24 13:05
3F:→ longlongint: 继承的时候会继承 has a 01/24 13:05
4F:推 longlongint: D 应该是 has a function, B应该是 has a List<Togg 01/24 13:08
5F:→ longlongint: le>. 都不用选 01/24 13:08
6F:→ longlongint: 打错 tagget 01/24 13:08
7F:→ GhriS: 感谢大大解释 说实在我觉得BD都很勉强 能不选最好 01/26 12:59
8F:→ GhriS: 但无奈题目要人选3个... 01/26 12:59
9F:→ GhriS: 今天去考完有出这题 oracle给的应该是ABE 01/26 13:00
10F:→ GhriS: 错误提示没有出现关於is-a has-a的 01/26 13:00