では使い捨てのクラスを作ってもいいという事ですか?
OOPの利点は拡張性だと思います。
継承が出来ないような汎用性のないクラスを作ってしまったら
非常に非効率的です。
上記の場合も、
本当なら、Tableクラスを引数にしたいですが、
そうすると汎用性が失われます。
Tableクラスを使わないと、このGUIのクラスは動かない事になります。
あるいは同じようなインスタンス変数を持つクラスがあった場合に、
誤作動を起こす可能性もあります。
なので、2次元配列を渡すのがベターかと思ったのです。

基本クラスのみを使ってかけば汎用性は最大になります。
引数に自作のクラスインスタンスをとるような設計は間違いではないのですか?