1 / 13

Rinktiniai Java skyriai Pratybos #1 2007-09-13

Rinktiniai Java skyriai Pratybos #1 2007-09-13. Programavimas Java. Prisiminti Java. classes, packets access modifiers, constructors final members, static members, static initializers inheritance, abstract methods, interfaces, type casting method overloading and overriding packets

pepin
Download Presentation

Rinktiniai Java skyriai Pratybos #1 2007-09-13

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. Rinktiniai Java skyriaiPratybos #12007-09-13 Programavimas Java

  2. Prisiminti Java • classes, packets • access modifiers, constructors • final members, static members, static initializers • inheritance, abstract methods, interfaces, type casting • method overloading and overriding • packets • exceptions

  3. Kas naujo Java 5.0 kalboje • generics • enhanced for loop • varargs • autoboxing • enums • static imports • annotations

  4. Java best practices • Rekomendacinio pobūdžio taisyklės: • kodo rašymui • projektavimui • bendrieji patarimai • Padeda išvengti dažnų klaidų • www.javapractices.com • gerai organizuotas tokių taisyklių sąvadas

  5. Java best practices • Naming conventions • klasių vardai: PascalCase • paketų vardai: lowercase • konstantų vardai: UPPER_CASE • visa kita: camelCase

  6. Java best practices • Naudokite paketus • companyname.productname.subpackage.ClassName • Pvz: • microsoft.vista.services.FancyGraphicsService • Mokomajame projekte bus leidžiama naudoti paprastesnius paketus: • manoprojektas.ClassName • manoprojektas.kitaspaketas.ClassName

  7. Java best practices • Encapsulation & information hiding • “maksimalaus privatumo politika”: • neviešink nieko, ko nebūtina viešinti • visi laukai turi būti privatūs • Setters and getters • private FieldType fieldName; • public FieldType getFieldName(); • public void setFieldName(FieldType value) • tik jei reikia galimybės keisti lauko reikšmę • JavaBeans

  8. Java best practices ši klasė yra JavaBean klasė class Student { private int id; private String name; public Student() { } public int getId() { return id; } public void setId(int id) { this.id = id; } public String getName() { return name; } public voidsetName(String name) { this.name = name; } }

  9. Java best practices • Interfeisai VS abstrakčios klasės

  10. Java best practices • Venk NullPointerException • String tipo duomenims nenaudok null. Naudok “” • Stenkis, kad tavo metodai niekada negrąžintų null • jei reikia grąžinti null, tą būtina dokumentuoti • Jei nesi tikras, ar objektas nėra null, patikrink: • if (obj != null) { obj.doSomething();} • Nesikreipk į masyvo elementą, nepatikrinęs masyvo ilgio: • if (array.length > 0) {value =array[0];}

  11. Java best practices • Exception handling • niekada gyvenime (!) nedaryk taip • try {connectToDatabase();} catch (Exception ex) {} • pagavęs exception’ą, mesk jį toliau, ir pridėk papildomos informacijos apie tai, kas įvyko: • try {connectToDatabase();} catch (Exception ex) { throw new MyException(“Could not connect to DB”, ex);}

  12. Java best practices • Exception handling (2) • visada atlaisvink resursus: • OutputStream file = null;try { file = new FileOutputStream("file.txt"); // write to file} catch (IOException ex) { throw new Exception("Error writing file.txt", ex);} finally { if (file != null) { file.close(); }}

  13. Java best practices Uždavinukai

More Related