De gegevensitems in een fragment zijn de namen en typen van gegevensitems waarnaar de broncode kan verwijzen.
De specificatie van gegevensitems is optioneel. Een fragment kan meer dan één gegevensitem bevatten, maar ieder type van een item mag slechts één keer voorkomen.
Eigenschap | Beschrijving |
---|---|
Gegevenstype | Verplicht. De beschikbare typen staan in de volgende tabel. |
Naam | Verplicht. Moet een geldige Java-variabelennaam opgeven. De broncode van het probefragment gebruikt deze naam om te verwijzen naar de aangegeven gegevens. |
Gegevenstype | type | Beschrijving |
---|---|---|
className | String | Bij interne probes: de klassennaam van de gecontroleerde methode, inclusief de pakketnaam in de interne indeling. Bij externe probes: de klassennaam van de aangeroepen methode. Voorbeeld: org/eclipse/tptp/EenKlasse |
methodName | String | Bij interne probes: de methodenaam van de gecontroleerde methode in de interne indeling. Bij externe probes: de methodenaam van de aangeroepen methode. Constructors hebben de methodenaam <init> en statische klasseninitialisering heeft de methodenaam <clinit>. |
methodSig | String | De handtekening van de methodeparameter en het retourtype in interne indeling. Niet geldig voor staticInitializer-fragmenten. Voorbeeld: (Ljava/lang/String;)I |
thisObject | Object | Het object this (voor instancemethoden) dat is doorgevoerd naar de gecontroleerde methode. Niet geldig voor staticInitializer-fragmenten. thisObject heeft de waarde null voor statische methoden, voor entry-fragmenten die van toepassing zijn op constructors en voor exit-fragmenten die van toepassing zijn op constructors als deze een uitzondering verwerpen. |
args | Object[] | Een array van Object-verwijzingen die als parameters voor de gecontroleerde methode fungeren. De array heeft één element per methodeparameter (de parameter this niet meegerekend). Parameters van een elementair type worden samengevoegd in tijdelijke objecten met een toepasselijk verwijzingstype, bijvoorbeeld: Integer voor int. Als de methode geen parameters gebruikt, is de grootte van de Object[]-array nul. Let op dat constructors voor niet-statische interne klassen één verborgen parameter per "intern" niveau hebben, dus de array parameters bevat meer elementen dan in de broncode staan vermeld. Niet geldig voor staticInitializer-fragmenten. |
returnedObject | Object | Een verwijzing naar het object dat wordt geretourneerd. Dit type is alleen beschikbaar in exit- en afterCall-fragmenten. Als het retourtype van de gecontroleerde methode van het type element is, wordt de retourwaarde opgenomen in een tijdelijk object van een toepasselijk verwijzingstype. Als de methode void is (geen waarde retourneert) of wordt afgesloten door een uitzondering, krijgt returnedObject de waarde null. |
exceptionObject | Throwable | Een verwijzing naar het uitzonderingsobject dat wordt verworpen. Dit type is alleen beschikbaar voor catch- en exit-fragmenten. Als de methode normaal wordt afgesloten, is de waarde van exceptionObject null. |
isFinally | boolean | Een vlag die aangeeft of het fragment is aangeroepen uit een finally-clausule (waar) of uit een catch-clausule (onwaar). Alleen geldig in catch-fragmenten. |
staticField | (diverse) | Het object waarnaar wordt verwezen door het statische veld. Het type is hetzelfde als het type dat is gedeclareerd in het staticField-object. Dit is alleen geldig als de probe een staticField declareert. (Zie Een voorbeeld van een staticField en een staticInitializer-probe.) Niet geldig voor externe probes. |
classSourceFile | String | De informatie over de bronbestandnaam die beschikbaar is in de foutopsporingskenmerken van het klassenbestand. Als er geen informatie over de bron is, heeft classSourceFile de waarde null. In Java is de waarde meestal alleen de bestandsnaam zonder de padinformatie. Niet geldig voor externe probes. |
methodNames | String | Een gecodeerde lijst met methodenamen en handtekeningen. De volgorde van de methoden in de lijst is gelijk aan de volgorde van de methoden in methodLineTables. De volgorde is tevens gelijk aan die van het gegevensitem methodNumber. De lijst bevat geen namen van methoden die in de klasse zijn ingevoegd door Probekit. De tekenreeks methodNames bestaat uit een of meer methodenamen en -handtekeningen, die zijn gescheiden door een plusteken ("+"). De methodehandtekeningen staan in de interne Java-indeling. Een voorbeeld: een klasse met twee methoden, een standaardconstructor en een methode run die een String als parameter heeft en een int retourneert, heeft de volgende methodNames-tekenreeks: <init>()V+run(Ljava/lang/String;)I Niet geldig voor externe probes. |
methodLineTables | String | Een gecodeerde lijst met regelnummers die overeenkomen met de uitvoerbare code-eenheden in de klasse. De lijst bevat geen uitvoerbare eenheden die in de klasse zijn ingevoegd door Probekit. Voor uitleg over de codering raadpleegt u De indeling van de tekenreeks methodLineTables. Niet geldig voor externe probes. |
methodNumber | Integer | Het indexnummer in de tabel methodNames van de methode waarin het probefragment is ingevoegd. Niet geldig voor externe probes of staticInitializer-fragmenten. |
executableUnitNumber | Integer | Het nummer van de uitvoerbare eenheid waarin het probefragment is ingevoegd. Dit gegevenstype is alleen geldig voor executableUnit- en catch-probefragmenten. Als de methode geen bronregelinformatie heeft, lijkt deze één uitvoerbare eenheid te hebben met het nummer nul. |
Om gegevensitems in te voeren in een probefragment kiest u Fragment in het structuuroverzicht, vervolgens Toevoegen en Bewerken om de gegevensitems te definiëren in het bewerkingsvenster.