1 / 8

Items 4, 14, 24, 34, 44, 54

Items 4, 14, 24, 34, 44, 54. Orange gruppe Liv , Jonas, Thorkil , Søren S og Martin D. Item numero 4. Utility class ( som Math), en samling af statiske felter og metoder Skal ikke initialiseres Abstract class? Problem: Man kan nedarve og instantiere på den måde

grant
Télécharger la présentation

Items 4, 14, 24, 34, 44, 54

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Items 4, 14, 24, 34, 44, 54 Orange gruppe Liv, Jonas, Thorkil, Søren S og Martin D

  2. Item numero 4 • Utility class (som Math), en samlingafstatiskefelterogmetoder • Skalikkeinitialiseres • Abstract class? Problem: Man kannedarveoginstantierepå den måde • Løsning: Lavklassens constructor private // Noninstantiable utility class public class UtilityClass { // Suppress default constructor for noninstantiability private UtilityClass() { throw new AssertionError(); } ... // Remainder omitted }

  3. Item numero 14 • Brug ikke public felter i public klasser, brug accessor-metoder • Mere kontrol over adgangentilklassensfelter • Public felterkanforsvareshvis de ogsågøres final, så de ikkekanændres • class Dot { • private int a; • public Dot(int a) { • this.a = a; • } • //getters • public intgetDot() { return a; } • //setters • public void setA(int a) { this.a = a; } • }

  4. Item numero 24 • Unchecked warnings • Ret dem du kan, men ikkealleerlette at rette • Bevis at kodener “typesafe”, ogbrugså @SuppressWarning • Bedre end bare at ignorereadvarslen: Man kan se hvisderkommernye warnings ArrayList<Book> books = new ArrayList(); public void myMethod { @SuppressWarnings(“unchecked”) ArrayList<Books> books = new ArrayList(); }

  5. Item numero34 • Item 34: Emulering af udvidelige enums vha. Interfaces • Man kan ikke extende enums i Java, men man kan ”efterligne” effekten ved at bruge interfaces.

  6. Item numero 44 • Item 44: Skriv javadoc comments til alle API elementer • Skriv kommentar til klasser, interfaces, konstruktor, metoder, felter osv. Kode uden er umulig økonomisk og tidsmæssigt at vedligeholde!! • Tips: • Det første javadoc comment til en klasse,interface, m.m. Indtil der kommer et punktum efterfulgt af komma, tages som opsummering af metoden. • Eks.: /** * Returns the char value at the specified index. An index ranges * from 0 to length() - 1. */

  7. Item numero 44 • Item 44: Skriv javadoc comments til alle API elementer • Der er HTML formattering i javadoccomments. • Eks.: /** This is a <b>bolded</b> javadoc comment*/ • Kan give visse problemer, f.eks. Ikke muligt at skrive HTML metacharacters i koden eksempelvis: < & > • Løsning: brug:1.{@code}, tagget da den udelader HTML formatering, og giver koden en code font.Eks. The param x must reside in the range: {@code 0 <= x && x > arr.length} 2.{@literal}, tagget da den udelader HTML formatering.Eks.: The param x must fit in the equation: {@literal x+y < y*y} • Foretrukkent at sørge for læsbarhed i både sourcecoden og den generede javadoc. Hvis begge ikke kan opnås tager den generede kode førset prioriteten.

  8. Item numero54 • Item 54: Brug JNI med omtanke • JNI(Java Native Interface) • C,C++, m.m. skrevne native/speciale methods. • Tilhvilkennytte? • Adgangtil legacy libraries • Native kodeekserkvereshurtigt. • Hvorfor med omtanke? • Unsafe • JVM(Java Virtual Machine) erblevetmegethurtigere. • Native kodesjældenthurtigere mere. • Mindreportabelt

More Related