CURS JAVA Fundamente CRISTIAN OLARU http:// olaru.blogspot.com
Fundamentele Limbajului Java
-
Author
colaru
-
View
9.856
-
Download
9
Embed Size (px)
DESCRIPTION
Introducere Tipuri de date Structuri de control Clase si obiecte Alte constructii JDBC
Text of Fundamentele Limbajului Java
- 1. CURS JAVA Fundamente CRISTIAN OLARU http://
olaru.blogspot.com
- 2. Cuprins
- 3. 1. INTRODUCERE
- 4. 1.1 Istoric si caracteristici
- 1995 - Java se naste. Tata: James Goslings, Mama: Sun
Microsystems
- Distributii: JSDK, J2EE, J2ME
- Versiuni JSDK : 1.11.4, 5.0 (Tiger), prezent - 6.0(Mustang),
viitor 7.0(Dolphin)
- Caracteristici: total orientat obiecte, suport intern pentru
fire de executie, complet specificat (JLS), case sensitive
- 5. 1.2 JVM
- Compilare trecerea din cod sursa (.java) in byte code pentru
JVM (.class)
- Executia interpretarea byte code-ului in JVM
- Avantaje JVM independenta de platforma, servicii pentru codul
executrat
- 6. 1.3 Instalare si utilizare
- Compilare - javac, executie java, documentatie standard -
javadoc
- Prezentare IDE: Eclipse si IDEA
- IDE: debugging, javadoc, refactoring
- 7. 2. TIPURI DE DATE
- 8. 2.1 Tipuri de date 1
- Limbaj puternic tipizat tip cunoscut in momentul
compilarii
- Variabile constante si conventii de nume in Java
- Tipuri: primitive (numerice si boolean), referinta (clase,
interfete, tablouri)
- Tipurile numerice: integrale (byte, schort, int, long, char),
virgula mobila (float, double)
- 9. 2.2 Domenii valori
- 10. 2.3 Tipuri de date 2
- Infasuratori pentru tipurile primitive (Float, Double, Byte,
Long, Short, Boolean, Character) java.lang
- Clasa Math, pachetul java.math
- Operatii cu numere mari: BigDecimal si BigInteger
- Siruri de caractere tipul String, concatenare + ,
imutabilitate, StringBuffer - mutabil
- 11. Immutable
1) String s=abc ; 3) String s2= s ; 2) String s= s.concat(def) ; s2
abc The heap String reference variable String objects String
reference variable s abcdef String objects
- 12. 2.4 Tablouri
- Sunt referinte creare folosind operatorul new , length ,
indexare []
- Pot contine atat primitive cat si referinte (spre deosebire de
JCF)
- Clasa utilitara java.util.Arrays sort, fill, equals
- 13. 3. STRUCTURI DE CONTROL
- 14. 4. CLASE SI OBIECTE
- 15. 4.1 Clase si pachete
- Declararea unei clase, membri: atribute, metode,
constructori
- Unitatea de compilare, pachete - fs
- Librarii vs. pachete, spatiu de nume, package, include
- Incarcare dinamica ClassLoader, CLASSPATH, jars
- 16. 4.2 Clase si obiecte in Java
- Domeniul de vizibilitate al unei clase este intreg pachetul din
care face parte
- Modificatorii de acces unei clase: public, abstract, final
- Obiecte: declarare, instantiere, initializare, operatorul new,
constructori
- Clasa Object: equals, hashCode, toString, clone
- Distrugerea obiectelor, garbage colector
- 17. 4.4 Mosteniri si interfete
- Interfete clase abstracte pure
-
- Implements, mostenire multipla extends, incapsulare
-
- Semnificatia mostenirii, constructorii claselor derivate, late
binding, polimorfism
-
- Conversii intre tipuri referinta - cast, upcast
- 18. 4.3 Ascunderea implementarii
-
-
-
- private numai in clasa in care e declart
-
-
-
- protected acces via mostenire peste pachete
-
-
-
- public acces de interfata
-
-
-
- package la nivel de pachet
-
- Modificatori atribute - static, final
-
- Modificatori metode static, final, abstract
-
- Exemple JDK(Calendar) + patterns
- 19. 5. ALTE CONSTRUCTII
- 20. 5.1 Sistemul de exceptii
- Suport intern pentru exceptii in limbaj
- Separa tratarea exceptiilor de codul obisnuit
-
-
-
- Exception eroare generica
-
-
-
- Error eroare de sistem se prinde degeaba
-
-
-
- RuntimeException eroare uzuala nu trebuie prinsa in mod
uzual
- Try, catch, finally, trows
- Exceptii proprii de bussines: trow
- 21. 5.2 Ierarhia de exceptii
- 22. 5.3 Fire de executie
- Programare concurenta, operatii atomice, monitoare
- Incrementarea nu este operatie atomica; initializarea simpla
este (inclusiv referinte), inafara de double si long
- Suport inclus direct in limbaj clasa Thread, interfata
Runnable
- Sincronizarea operatiilor atomice folosind syncronize
- Studiu de caz colectiile sincronizate
- 23. 5.4 Colectii
- Java Collection Framework (JCF) containeri de obiecte
- Colectii: Collection (List, Set) pentru valori simple, Map
pentru perechi cheie/valoare
- Implementari uzuale: ArrayList (List), HashSet (Set), HashMap
(Map)
- Colectii sincronizate 1.1 Vector (List), Hashtable (Map)
- Parcurgerea colectiilor: Iterator
- Sortare colectii: Comparable compareTo()
- 24. 5.5 Colectii - interfete
- 25. 5.6 Librarii standard
- java.lang Cloneable, Comparable, Runnable, Object,
infasuratori, Math, Number, String, Thread, System, Throwable,
Exception
- java.util - colectii, Calendar - GregorianCalendar, Date,
Timer, Locale, StringTokenizer
- java.io File, Reader, Writer, InputStream, OutputStream
- java.lang.reflect reflection API
- 26. 6. JDBC
- Java Database Connectivity
- 27. 6.1 Introducere in JDBC
- Prin JDBC se incearca realizarea unei interfete intre Java si
baze de date
- Pachetul din JDK: java.sql
- Pentru fiecare tip de SGBD este necesar un driver (o librarie
jar) care abstractiveaza conectivitatea
- classes12 pentru Oracle, jconnector pentru MySQL
- clasa DriverManager, ce se ocupa cu inregistrarea driverelor ce
vor fi folosite in aplicatie
- 28. 6.2 Specificarea URL-ului
- Sursa de date se specifica prin intermediul unei adrese numite
JDBC URL care are urmatorul format
-
- jdbc:sub-protocol:identificator_baza_de_date
-
- jdbc:sybase:testdb jdbc:db2:testdb
- 29. 6.3 Pasi in lucrul cu JDBC
- 1. Inregistrarea si incarcarea driver-ului
- 2. Crearea unei conexiuni folosind clasa
- 3. Interactiunea cu baza de date
- folosind clasa Statement , PreparedStatement ,
CallableStatement
- 4. Receptionarea rezultatelor utilizand
- metode ale clasei ResultSet
- 30. 6.4 Interogari
- Un obiect Statement este cel care trimite cereri SQL catre baza
de date
- Pentru realizarea unei cereri folosim metoda executeQuery () a
unui obiect din clasa Statement
- Pentru crearea unui obiect Statement este folosit un obiect al
clasei Connection
- Prelucrarea rezultatului ResultSet, decuplarea de baza de
date
- Obiectul ResultSet contine linii din baza de date pe care le
parcurgem folosind metoda next().
- 31. Referinte utile
- 0. Cristian Olaru: http:// olaru.blogspot.com
- 1. Istoric - Java timeline:
http://www.javarss.com/java-timeline-10years.html
- 2. Download: http:// java.sun.com /
- 3. Specificatia limbajului: http:// java.sun.com/docs/books/jls
/
- 4. Specificatia masinii virtuale: http://
java.sun.com/docs/books/vmspec /
- 5. Blog Gosling: http:// blogs.sun.com /jag/
- 6. Bruce Eckel - Thinking in Java: http:// www.mindview.net
/Books/TIJ/
- 7.Eclipse: http:// www.eclipse.org
- 8. IntelliJ IDEA: http:// www.jetbrains.com /
- 9. JavaDoc:
http://java.sun.com/j2se/1.4.2/docs/api/index.html
- 10. Java Tutorial:
http://java.sun.com/docs/books/tutorial/index.html
- 11. Forum curs: http:// www.javaromania.com