VP gang 10



Javadoc

Bemærk: Gratisudgaven af JBuilders kan faktisk godt generere simplificeret javadoc.
Det gøres ved at gå over på Doc-fanen på en klasse. Eksperimentér med forskellige javadoc-koder i en af dine klasser ved at skifte mellem Source- og Doc-fanen.

Opgaver

  1. Kig i kildeteksten til Vector-klassen (den kan findes i afsnit 1.6.8 eller i din java-installation, ofte i filen src.zip), og studér metoderne insertElementAt() og toArray().
    Sammenlign med javadokumentationen (hjælpen) til Vector, og find ud af, hvad koderne @param, @exception, @see, @return og @since gør.

  2. Hent klassen SenderActionEvent fra afsnit 4.3.5 ned til dig selv, og generér dens HTML-dokumentation.

  3. Medtag henvisninger til standarddokumentationen med parameteren -link
    (beskrevet i afsnit 2.2.2, Henvise til den eksisterende javadokumentation).

Dit eget projekt

Dokumentér nogle af klasserne fra dit projekt og prøv at køre javadoc-værktøjet.
Det gøres fra kommandolinien (skift katalog til der hvor dine javafiler er):

javadoc *.java

Se i noterne hvordan Javadoc i øvrigt kan køres fra kommandolinien og prøv det.
Bruger du JDeveloper kan du også køre det fra værktøjet ved at vælge Tools/Generate javadoc.

Kig de resulterende HTML-filer igennem og se om resultatet er tilfredsstillende.

Eventuelt: Prøv at lægge filerne ind der hvor dit projekt angiver at dokumentation skal være (Project properties, Paths, Documentation), eller ændr projektegenskaberne til at pege på filerne. Se om de kommer med i JBuilders hjælp ved at gå over på Doc-fanen (eller tryk F1 mens markøren står på en af klasserne).


Evt.: Properties


Prøv nedenstående program:

import java.io.*;
import java.util.*;

/*
Indhold af "filplaceringer.properties" før kørsel
#filplaceringer
#Tue Nov 04 17:19:09 CET 2003
nyfil3=/tmp/ny3
datafiler=/var/
andet=/tmp/
tmpfiler=/var/tmp/
*/
public class BenytProperties
{
  public static void main(String[] args) throws Exception
  {
    Properties filplaceringer = new Properties();

    try {
      filplaceringer.load(new FileInputStream("filplaceringer.properties"));
    }
    catch (Exception e) {
      System.out.println("Kunne ikke indlæse: "+e);
    }

    String tmpfiler = filplaceringer.getProperty("tmpfiler","/tmp");
    System.out.println("tmpfiler = "+tmpfiler);

    int nr = +filplaceringer.size();
    filplaceringer.setProperty("nyfil"+nr,"/tmp/ny"+nr);
    System.out.println("filplaceringer = "+filplaceringer);
    filplaceringer.store(new FileOutputStream("filplaceringer.properties"),"filplaceringer");
  }
}
/*
Uddata:
tmpfiler = /var/tmp/
filplaceringer = {nyfil3=/tmp/ny3, datafiler=/var/, andet=/tmp/, tmpfiler=/var/tmp/}
*/

Designmønstre

Prøv eksemplerne fra noterne (ligger her og her - du kan også hente eksemplerne som zip-filer).

  1. Ændr Flytkommando til at huske tilstanden før og efter ændringen, dvs. de absolutte x- og y-koordinater både før ændringen og efter ændringen.

  2. Udvid klassen Flytkommando med metoden gendan(), der annulerer et kald til fortryd(). Tilføj variablen gendanHistorik og programmér metoden til gendan() i Historik-klassen og afprøv om du kan annullere fortryd