Welcome toVigges Developer Community-Open, Learning,Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
472 views
in Technique[技术] by (71.8m points)

面向对象如何实现主体+可选功能的设计?

现有不同类型的设备,根据类型的不同,具有不同的功能。

使用 typescript来实现该需求,应该如何组织 class 来应对可能增多的设备类型和功能


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)

interface IXxxable
interface IYyyable
interface IZzzable

interface IDevicePc extends IXxxable, IYyyable, IZzzable
interface IDevicePos extends IYyyable, IZzzable
interface IDeviceMobile extends IXxxable, IYyyable

class Item

class ItemPc extends Item implements IDevicePc
class ItemPos extends Item implements IDevicePos
class ItemMobile extends Item implements IDeviceMobile


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to Vigges Developer Community for programmer and developer-Open, Learning and Share
...