Feld<T>

Status
Nicht offen für weitere Antworten.
S

shok

Gast
hallo habe folgende Frage....
und zwar brauch ich ein Feld vom Typ <T>,
das heißt in dem Feld kann ein beliebiger Datentyp abgespeichert werden
komm da irgendwie nicht weiter, brauch ja eigentlich eine extra Klasse um dieses Feld zuerzeugen, oder?
Vielleicht geht es irgendwie einfacher?

Bin für jede Hilfe dankbar....
bye
 

hansz

Aktives Mitglied
Die Java Language Specification, Third Edition enthält zur Deklaration von Felder die folgenden Regeln:


FieldDeclaration:
FieldModifiers_opt Type VariableDeclaratorId = VariableInitializer ;


Type:
PrimitiveType
ReferenceType


ReferenceType:
ClassType
...


Class declarations define new reference types.


ClassDeclaration:
NormalClassDeclaration
...


NormalClassDeclaration:
ClassModifiers_opt class Identifier TypeParameters_opt Super_opt Interfaces_opt ClassBody




Beispiel: Listing enthält Klassenvariable v (statisches Feld). Der Typ (Referenztyp) von v ist Vector<Integer>.
Die Zeile v.add(new Float(3.14f)); führt dann zu einer entsprechenden Fehlermeldung, da als Typargument
Integer gewählt wurde. Siehe auch API-Docs: Class Vector<T>.



Code:
/* Test.java */

import java.util.*;

public class Test {
  
  public static Vector<Integer> v;

  public static void main(String[] args) {
    
    v = new Vector<Integer>();
    v.add(new Integer(3));
    
    // Error: cannot find method add(java.lang.Float)
    //v.add(new Float(3.14f));
  }
}




Gruß, hansz :wink:
 
Status
Nicht offen für weitere Antworten.

Neue Themen


Oben