Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Dette er hovedsiden for faginnhold i TDT4100. Her kommer det etterhvert en innholdsfortegnelse og forhåpentligvis et tankekart med lenker til tematisk innhold.

Faginnhold

Faginnhold (forutsetninger/pensum)

  • datatyper
    • logiske (boolean, true/false)
    • tall
      • heltall (int/byte/short/long)
      • desimaltall (double/float)
      • tegn (char)
    • strenger (String)
      • Implisitt konvertering til String med String.valueOf og Object.toString
    • tabeller

...

  • uttrykk
    • konstantverdier
      • tabellkonstanter i initialisering vs. generelt i uttrykk
    • variabelreferanser
    • operatorer og operander
      • numeriske (+,-,*,/,%)
      • bit (&,|,<<,>>,~)
      • numerisk sammenligning (>,>=,<,<=)
      • sammenligning (==, !=)
      • logiske (!, &&, ||, ^)
      • strengspleising (plus)
      • tilordning evt. m/operator (<op>=)
      • pre/post-dekrement/inkrement (++,--)
      • betinget (?(smile)
      • presedens og parenteser
    • metodekall og parameteroverf√∏ringparameteroverføring
    • konvertering av verdier
      • implisitt konvertering
      • eksplisitt avkutting av tallverdier
    • this-referansen
  • kontrollstrukturer
    • betingelser og valg (if/else, switch/case/default)
    • iterasjon (while, for)
      • starttilstand
      • stoppbetingelser
      • stegsetning
      • avbrudd/hopp ut eller over (break/continue)
      • navngitte l√∏kker løkker (labels)
  • metoder
    • parametre
    • returtype
    • overlasting (overloading)
    • kropp
    • applikasjonsmetoden main
      • signatur
      • kommandolinjeparametre
  • klasser
    • kategorier
      • dataklasser
      • grensesnitt
      • enum
    • medlem
      • felt
      • metoder
      • konstrukt√∏rkonstruktør
    • grensesnitt/innkapsling
      • synlighet(smodifikatorer): public, private, pakke/default, protected
      • konvensjoner:
        modifikatorerpublicprivatepakke/defaultprotected*** konvensjoner
        get/set-metodercountmetoder, count/get/setaddset, add(append/insert)/removecontainsremove, contains/indexOf**
    • arv
      • implements/extends
      • polymorfi
      • abstrakte klasser
    • parametriserte/generiske
      • kovarians/konvarians
      • brukt i Collection-rammeverket
      • egendefinerte
    • instanser/instansiering
  • unntakshåndtering unntaksh√•ndtering
    • throw
    • try/catch
    • finally
    • throws
    • checked vs. unchecked
    • Exception
      IOExceptionFileNotFoundExceptionRuntimeExceptionNullPointerExceptionIndexOutOfBoundsExceptionIllegalArgumentExceptionNumberFormatExceptionIllegalStateExceptionUnsupportedOperationException: IOException, FileNotFoundException, RuntimeException, NullPointerException, IndexOutOfBoundsException, IllegalArgumentException, NumberFormatException, IllegalStateException, UnsupportedOperationException
  • iterasjon: standardløkker, tabeller, Collectioniterasjon
    standardl√∏kkertabellerCollection-instanser (og tabeller)strengertekstinputdatainputakkumulering , strenger, tekstinput, datainput, akkumulering av resultat
  • standard-klasser/objekter
    • bruk av fullt klassenavn med pakke vs. import
    • System.out
      : print/println, printf
    • printlnprintf** System.in og Scanner
  • datastrukturer
    • Collection-rammeverket
      : Collection/List/ArrayList/LinkedListIteratorSetMapLinkedList, Iterator, Set, Map/HashMap**
    • egendefinerte
      : lenkede listerstack/stabelqueue/k√∏tr√¶rtabelllister, stack/stabel, queue/kø, trær, tabell
  • tall/beregninger
    • Nummer-klassene
    • Math
      PIrandom: PI, random(), diverse funksjoner (min/max/abs, avrunding, trig., exp., ...)**
    • Random
  • IO
    • strømmerstr√∏mmer
      InputStream/OutputStreambufring OutputStream, bufring og close/flushReader/WriterPrintStream/PrintWriterkonsollflush, Reader/Writer, PrintStream/PrintWriter, konsoll-IO med System.in/System.out, ObjectStream
    • filer: File
    • nettverk: URI/URL, http, ftp, file, URLConnection
    • parsing: regulære uttrykk, Pattern, Matcher, Scanner, strengoutObjectStream** filer
      File** nettverk
      URI/URLhttpftpfileURLConnection** parsing
      regulære uttrykkPatternMatcherScannerstreng-til-tall-konverteringsmetoderIntegerkonverteringsmetoder, Integer.parseInt(String)/Integer.valueOf, (String)Double.parseDouble(String)/Double.valueOf(String)
  • GUI
    hendelserkomponenterdata-komponenterenkle verdierlister/hierarkiercontainerelayoutdialogerjavax.swing.JOptionPaneshowInputDialog: hendelser, komponenter, data-komponenter, enkle verdier, lister/hierarkier, containere, layout, dialoger, javax.swing.JOptionPane, showInputDialog(String)-metodeshowMessageDialogmetode, showMessageDialog(null, String)-metodeshowConfirmDialogmetode, showConfirmDialog(null, String)-metodeYESmetode, YES_OPTION, NO_OPTION, CANCEL_OPTIONtoolkitsSwing/AWTSWTJavaFXgrafikkJava2DOpenGL
  • tr√•der
    Thread/Runnablemonitorerwaitnotify/notifyAllsynchronized
  • patterns
    delegeringfactoryobservert-observat√∏r
  • OPTION, toolkits, Swing/AWT, SWT, JavaFX, grafikk, Java2D, OpenGL
  • tråder: Thread/Runnable, monitorer, wait, notify/notifyAll, synchronized
  • patterns: delegering, factory, observert-observatør
  • testing: testing
    eyeballtesting (main og print), enhetstesting med JUnittestklasser JUnit, testklasser og -metoderassert-metodenesetUp og tearDowntesting metoder, assert-metodene, setUp og tearDown, testing av unntak