To tylko jedna z 4 stron tej notatki. Zaloguj się aby zobaczyć ten dokument.
Zobacz
całą notatkę
Technologie mobilne prof. UE dr hab. Inż. Stanisław Stanek
Wykład 2
Gdzie przechowywane są dane
Rejestry - ograniczona liczba rejestrów procesora, bardzo szybkie zarządzanie automatyczne przez kompilator, brak odwzorowania w języku Java,
Stos - zarządzanie automatyczne przez kompilator, przechowuje referencje do obiektów ale nie same obiekty, szybkościowo drugi po rejestrach
Sterta - przechowuje obiekty, pojemność ograniczona adresacją maszyny, dostęp wolniejszy od stosu,
Obszar statyczny - dane dostępne w każdym momencie pracy programu, nie przechowuje obiektów javy (przechowuj klasy statyczne i zmienne klasy)
Obszar stałych - dane tylko do odczytu, o ilości i rozmiarze znanych podczas translacji programu
Obszar poza RAM - dane poza cyklem życia programu zewnętrzne strumienie danych, obiekty trwałe w systemie plików lub w bazach danych
Typy podstawowe
Boolean, char, byte, short, int, long, float, double, void (+ rozmiar, min, max, typ obiektowy - zazwyczaj to samo z wielkiej)
Klasy opakowujące
Tworzenie na stercie odpowiedników typów podstawowych
Char c = 'x';
Character cc = new Character('x')
Zasięg zmiennych
Zakres ważności, albo czas życia i widoczności zmiennych
(ograniczenie klamry, jak w C++)
{
Int x=12l //tylko x jest widoczny
{
int q = 100; //widoczne są xi i q
}
//tylko x jest widoczny, q przestaje istnieć
}
Zmienne definiowane przed użyciem
Klasa statyczna
Class Statyczna {
Staic int i = 40;
Static void zwieksz() {i++}
}
Statyczna st1 = new Statyczna();
Statyczna st2 = new.Statyczna();
// obie zmienne st1.i oraz st2.i mają tą samą wartość 40 w pamięci oprócz obiektów st1 i st2 istnieje //zmienna Statyczna.i i metoda Statyczna.incr()
Statyczna s = new Statyczna();
s.incr();
//wywołanie metody, lub
Statczna.incr();
//j.w bez tworzenia obiektu
Inicjacja statyczna
W javie istnieje blok inicjacji statycznej static, wyknwywany przy powoływaniu pierwszego obiektu klasy lub przy odwołaniu się do zmiennej, lub metody określonej jako static. Kod bloku statyczego może odwoływać się jedynie do zmiennych klasy, a nie do zmiennych obiektowych:
Public class PewnaKlasa {
Static int[] wartosci = new int[12];
Static {
For (int i=0; i
... zobacz całą notatkę
Komentarze użytkowników (0)