Èí¼þÉè¼ÆÄ£Ê½ÓëÌåϵ½á¹¹ ÏÂÔØ±¾ÎÄ

.

¡¾ÊµÑéС½á¡¿

ʹÓù¤³§·½·¨·ÃÎʲ¢ÇÒ³õʼ»¯ºÏÊʵÄÀàµÄ¶ÔÏ󣬼ò»¯ÁËÓ¦ÓóÌÐò£¬Ó¦ÓóÌÐò±¾Éí²»ÔÙº¬ÓдóÁ¿µÄÌõ¼þÓï¾äÅж¨ºÎʱѡȡÄĸöÀà¡£Æä´Î£¬¹¤³§·½·¨ÊµÏÖÁËÒ»Ð©ÌØÊâµÄij¸öÀàµÄ»úÖÆ£¬ÓÈÆäÊDzã´Î½á¹¹²»Í¬µÄÀàÐèÒª²»Í¬µÄ³õʼ»¯·½·¨µÄʱºò¡£

-

.

³éÏ󹤳§·½·¨Ä£Ê½¡ª¡ª·¿ÎÝÐÅÏ¢

¡¾ÊµÑéÄÚÈÝ¡¿

ÔÚÀý2.4ÖÐÉè¼Æ²¢ÇÒʵÏÖÁ˺À»ª£¨Super£©ºÍÖеȣ¨Medum£©±ðÊû£¨House£©

ºÍ¹«Ô¢£¨Condo£©µÄ²éѯ¡£ÒªÇóÔÚ¸ÃÉè¼ÆµÄ»ù´¡ÉÏ£¬Ôö¼ÓÒ»¸öеÄÀàSemiDetacher£¨°ë¶ÀÁ¢Ê½Â¥Ó£¬²¢ÇÒ±àд´úÂëʵÏÖÏàÓ¦µÄ²éѯ¹¦ÄÜ¡£

¡¾Ìí¼Ó´úÂë¡¿

1¡¢Ìí¼ÓSemiDetacherÀࣺ

public interface SemiDetacher {

public String getSemiDetacherInfo(); public String getSemiDetacherFeatures();

}

2¡¢Ìí¼ÓSuperSemiDetacherÀࣺ

public class SuperSemiDetacher implements SemiDetacher {

private String name;

public SuperSemiDetacher(String cName)

{ }

name = cName;

public String getSemiDetacherInfo()

-

.

{

return \

}

public String getSemiDetacherFeatures()

{ }

return \

}

3¡¢Ìí¼ÓMediumSemiDetacherÀࣺ

public class MediumSemiDetacher implements SemiDetacher {

private String name;

public MediumSemiDetacher(String cName) { }

public String getSemiDetacherInfo() {

return \

name = cName;

}

public String getSemiDetacherFeatures()

-

.

{ }

return \

}

4¡¢Ìí¼ÓBuildingFactory£º

public abstract SemiDetacher getSemiDetacher();

5¡¢Ìí¼ÓMediumBuildingFactory£º

public SemiDetacher getSemiDetacher() {

return new MediumSemiDetacher(\

}

6¡¢Ìí¼ÓSuperBuildingFactory£º

public SemiDetacher getSemiDetacher() {

return new SuperSemiDetacher(\

}

7¡¢Ìí¼ÓGUI£º

£¨1£©public static final String SEMIDETACHER = \

£¨2£©cmbHouseType.addItem(SEMIDETACHER);

-