package alx.p02_zmienne;

import java.time.LocalDate;

public class Typy {

    public static void main(String[] args) {
   	 // Typy dzielą się na dwie kategorie:
   	 // 1) typy proste
   	 byte b = 15;
   	 short s = 1000;
   	 int i = 100000;
   	 long l1 = 10, l2 = 5000000000L;
   	 
   	 float f = 3.14F;
   	 double d = 3.14;
   	 
   	 // char to pojedynczy znak, ale jednocześnie może być traktowany jak liczba z zakresu 0-64k
   	 char znak = 'A';
   	 
   	 boolean falsz = false, prawda = true, niewiem = d > 3.0;
   	 
   	 // typów byte i short nie opłaca sie używać, chyba że w dużych tablicach
   	 
   	 
   	 // 2) typy obiektowe
   	 Object o = new Object();
   	 System.out.println(o);
   	 
   	 // klasa String - napisy
   	 String imie = "Ala";
   	 
   	 // platforma Java SE definiuje ok 4 tys. klas
   	 LocalDate data = LocalDate.now();
   	 System.out.println(data);
   	 System.out.println(data.getDayOfMonth());
   	 System.out.println(data.getDayOfYear());
   	 System.out.println();
   	 
   	 // programiści mogą tworzyć własne klasy
   	 
   	 
   	 // w Javie również tablice są obiektami:
   	 int[] liczby = {1,2,3,4};
   	 System.out.println(liczby.length);
   	 
   	 System.out.println(liczby[1]); // 2
   	 
   	 // więcej na temat klas i obiektów - na trzecich zajęciach

    }

}


