などでプリミティブのクラスを取得できますchar.class
。int.class
そうは言っても、次の 2 つのことのいずれかが真実であると言えます。
chararray
が の場合char[]
、その中のすべての要素はタイプchar
(never Character
) になります。Aはプリミティブchar[]
のみを保持できます。char
- がオブジェクト ( 、など) を保持する可能性のある参照型の配列である場合、プリミティブ型は参照型の配列に格納できないため、要素が になること
chararray
はありません。Character
Object[]
Character[]
T[]
char
後者の場合、配列の型付け方法に応じて、チェックを行う必要がある場合とない場合があります。それが の場合、その中には sCharacter[]
のみCharacter
が存在できます (まあ、または のサブクラスであり、最終クラスであるCharacter
ため何もありません)。Character
同様に、 の場合は sInteger
のみが含まれますInteger
。の場合Object
は、任意の参照型を保持でき、リフレクション チェックを行うか、別の設計を考え出す必要があります。
ボクシングとオートボクシングは、参照型とプリミティブ型の違いを隠すことができますが、それらは実際には異なり、どちらもサブタイプではありません (または、オートボクシング/アンボックス化を除いて割り当て可能です)。