這個程序的TypeScript版本
abstract?class?Baverage { condiments:?boolean; constructor(condiments:?boolean) { this.condiments?=?condiments; this.BoilWater(); this.Brew(); this.PourInCup(); if?(this.condiments) { this.AddCondiments(); } } public?abstract?BoilWater():?void; public?abstract?Brew():?void; public?abstract?PourInCup():?void; public?abstract?AddCondiments():?void; } class?Coffee?extends?Baverage { constructor(condiments:boolean) { super(condiments); } public?BoilWater() { console.log("把水煮沸"); } public?Brew() { console.log("用沸水沖泡咖啡"); } public?PourInCup() { console.log("把咖啡倒進杯子"); } public?AddCondiments() { console.log("加糖和牛奶"); } } $(function() { let?coffee1:?Baverage?=?new?Coffee(true); let?coffee2:?Baverage?=?new?Coffee(false); })
?