俺が(javaとかc#とかC++のテンプレのよーな機能のある言語で)作ると

java:
// 表示機
// L: "1行4文字"や"Y行X文字"といった機器ごとの表示位置の表現
abstract class Display<L extends Location> {
  public abstract void print(L location, char ch);
}
// 表示位置の表現(ただのmarker interface)
interface Location { }

// 7セグLED表示機
final class LED7Segment extends Display<Location7Segment> {
  public void print(Location7Segment location, ch) { location.getX()とgetY()をつかってchを表示 }
}
final class Location7Segment implements Location {
  public Location7Segment(int x, int y) {...}
  public void getX() {...}
  public void getY() {...}
}

// LCD->にたよーなもの.

Locationは"表示の形式"ということで,もし,Windowsのウィンドウに表示するような場合などはFormatみたいな形でまとめるのもいいかも