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