17 lut 2010

Test println zmiennych


public class Main {
//typ nazwa wart domyślna
static boolean _boolean; //boolean
static char _char; //'\u0000'
static byte _byte; //(byte)0
static short _short; //(short)0
static int _int; //0
static long _long; //0L
static float _float; //0.0f
static double _double; //0.0d

public static void main(String[] args) {
System.out.println(_boolean); //false
System.out.println(_char); //jakiś kwadracik
System.out.println(_byte); //0
System.out.println(_short); //0
System.out.println(_int); //0
System.out.println(_long); //0
System.out.println(_float); //0.0
System.out.println(_double); //0.0
}
}

Zasięg zmiennych


/*
*Nie wolno używać static ,public,private,protcted
*wewnątrz metod
*
* Nie wolno napisywać zminnych ( w pod zasięgach)
*/
public static void testScope(){
// static int x; -błąd bo static
//private int x; - błąd bo public

int x;
{
int x; //błąd nie można napisywać
int y;
}
y=4; //błąd odwołąnie poza zasięgiem
}

Podstawy

  1. Obiekty są przechowywane na stercie.
  2. Typy prymitywne przechowywane są na stosie.
  3. Tablica obiektów inicjalozowana jest wartościami null.
  4. Tablica typów prymiywnych jest zerowana.
  5. Wartości domyślne nadawane są tylko dla składowych klas!
  6. Wartość domyślna dla zmiennej prymitywnej wew. metody nie jest nadawana! -> błąd kompilacji
  7. Public, static, private , protected nie można używać dla zmiennych wew. metody!
  8. Można przysłonić w metodzie pole klasy ale trzeba wtedy nadać wartość!
  9. Dla obiektów == i != porównuje referencje!
  10. Nie nadpisany equal() porównuje domyślnie referencje!
  11. Switch(x) => x musi być selektorem całkowitym!
  12. Każde działanie na byte,char lub short jest promowane do inta.
  13. Boolean nie możę być rzutowany na coś innego i coś innego nie może być rzutowane na booleana.
  14. Traktowanie liczb jako zmiennych logicznych jest niedozwolone!
  15. Nazwa zmiennej nie może być liczbą, może zaczynać się od litery,$ lub _.
  16. Z metod statycznych ma się tylko dostęp do zmiennych statycznych!
  17. Możemy skompilować bez błądów pusty plik javy! javac Test.java
  18. int x='x'; jest poprawne zaś char c=-1; jest niepoprawne
  19. Inicjalizacja zmiennych klasy następuje przed wywołaniem konstruktora!
  20. Klasa może być public lub bez ,protectedi private jest tylko dla zmiennych!
  21. Nie można mieszać final,absctact,strictfp ze sobą!
  22. strictfp - tylko do klass i metod , nie do zmiennych!
  23. Jeżeli klasa posiada choć 1 metodę abstract to cała klasa musi być abstract!
  24. Metoda oznaczona jako private nie może być przysłoniona (overriding) , or nadpisana :D
  25. Konstruktor nie może być synchronized!!!!