VB.NET 版類別適配器:每個具體類別需對應一個適配器類別(TriangleDrawAdapter、CircleDrawAdapter、SquareDrawAdapter),分別繼承具體類別並實作 IDrawStrategy。
Class TriangleDrawAdapter
Inherits Triangle
Implements IDrawStrategy
Public Sub draw() Implements IDrawStrategy.draw
Me.paint()
End Sub
End Class
泛型可部分緩解(僅 ISO C++ 與 C++/CLI Template 支援繼承泛型參數),C#、VB.NET Generics 不支援此技巧。詳細改良請參閱系列第 7 篇。