1. ホーム
  2. language-agnostic

[解決済み] TypeとClassの違いは何ですか?

2022-04-21 18:46:52

質問

型とクラスは何が違うのか、逆に何が違うのか?

(言語にとらわれない一般的な意味において)

解決方法は?

以下の回答は、Gofの本( デザインパターン )

オブジェクトの クラス は、その オブジェクトは実装されます。このクラスは は、オブジェクトの内部状態を定義し の実装は の操作を行うことができます。

<ブロッククオート

これに対して、オブジェクトの タイプ は、そのインターフェイス、つまり リクエストのセット を応答します。

<ブロッククオート

オブジェクトは多くのタイプを持つことができます。 また、異なるクラスのオブジェクトが は同じ型を持っています。

//example in c++
template<typename T> 
const T & max(T const &a,T const &b)
{
return a>b?a:b;  //> operator of the type is used for comparison
}

max関数は 操作 > を持つクラスは、そのクラスのための特定の max<particular class/primitive type> 関数を生成するために、上記の要件を満たす任意のクラスを使用することができます。