Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package cz.blackmail.watchdog.controller; // IGNORUJ, DOPLNI SE AUTOMATICKY
- /**
- * Created by BlackMail on 12.2.2016.
- */
- public class Database {
- // Standard je davat vsechny atributy private (bez vyjimky) a nazvy vsech promennych a metod stylem viz nize:
- private String personName; // Retezec je objekt typu String
- private int birthYear; // primitivni datovy typ (podobne jako v C)
- private double salary; // Asi plat? nevim co je vyse uvazku omg :D
- private static double maxSalary = 1; // Maximalni "vyse uvazku"
- // Konstruktor ..
- public Database(String personName, int birthYear) {
- if (personName == null) {
- // Vyjimka - ze je neco spatne. Momentalne to pouze shodi program s vypsanym textem
- throw new NullPointerException("Person name nemuze byt null");
- }
- if (birthYear < 1900 || birthYear > 2016) {
- // Nejake logicke omezeni ...
- throw new IllegalArgumentException("Neplatny rok");
- }
- // Nyni mame data validni, tak je priradime do vlastnosti objektu..
- this.personName = personName;
- this.birthYear = birthYear;
- }
- public String getPersonName() {
- return personName;
- }
- public int getBirthYear() {
- return birthYear;
- }
- public double getSalary() {
- return salary;
- }
- // Staticky getter
- public static double getMaxSalary() {
- return maxSalary;
- }
- // Staticky setter. Settery byvaji VZDY bez validace. Validace se dela vetsinou pred nastavenim hodnoty do setteru.
- public static void setMaxSalary(double maxSalary) {
- Database.maxSalary = maxSalary;
- }
- public boolean salaryCheckSpecialMethod(double newSalary) {
- // Jmenem tridy se referuji staticke metody nebo promenne
- if (newSalary + this.salary > Database.maxSalary) {
- return false;
- } else {
- this.salary += newSalary;
- return true;
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement