Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package telefony;
- public class Telefony {
- public static void main(String[] args) {
- //referencjom poszczegolnych typow mozna przypisac obiekty odpowiadajacych typow
- Telefon t1 = new Telefon();
- TelefonStacjonarny t2 = new TelefonStacjonarny();
- TelefonKomorkowy t3 = new TelefonKomorkowy();
- TelefonInternetowy t4 = new TelefonInternetowy();
- //na rzecz obiektow klas pochodnych mozna wywolac metody klasy bazowej
- t1.obliczKwoteDoZaplaty();
- t2.obliczKwoteDoZaplaty();
- t3.obliczKwoteDoZaplaty();
- t4.obliczKwoteDoZaplaty();
- //na rzecz obiektu i klasy bazowej NIE MOZNA wywolac metod i klas pochodnych
- //t1.wyslijSMS("1234", "fsdfsafs"); // tak NIE MOZNA
- //referencjom typu klasy bazowej mozna przypisac obiekty klas pochodnych
- Telefon t5 = new TelefonKomorkowy();
- Telefon t6 = new TelefonInternetowy();
- Telefon t7 = new TelefonStacjonarny();
- //referencjom klas pochodnych NIE MOZNA przypisac obiektow klasy podstawowej
- //TelefonInternetowy t8 = new Telefon();
- //TelefonKomorkowy t9 = new Telefon();
- //TelefonStacjonarny t10 = new Telefon();
- t1 = t2; //t1 Telefon, t2 TelefonStacjonarny //przypisalismy referencje typu t2 do referencji typu t1
- //referencja t1 moze zawierac odwolania do obiektow klasy bazowej i pochodnej
- //referencja t2 moze zawierac odowlania do obiektow typu TelefonStacjonarny();
- t2 = (TelefonStacjonarny)t1; //Przyklad Rzutowania
- //t4 = (TelefonInternetowy)t3; //raczej nie mozna
- if(t1 instanceof TelefonStacjonarny) {
- t2 = (TelefonStacjonarny)t1; //przyklad rzutowania
- } else {
- System.out.println("Nie mozna rzutowac");
- }
- }
- }
- //---------------------------------------------------------------------------------------------
- package telefony;
- public class Telefon {
- String numerTelefonu;
- int lacznyCzasRozmow;
- double cenaRozmowy;
- void zadzwon(String nr) {
- System.out.println("Dzwonie pod numer: " + nr);
- }
- double obliczKwoteDoZaplaty() {
- return 0;
- }
- void ustawCeneRozmowy(double cena) {
- cenaRozmowy = cena;
- }
- }
- //-----------------------------------------------------------------------------------------------
- package telefony;
- public class TelefonStacjonarny extends Telefon{
- String prefix;
- TelefonStacjonarny() {
- this.cenaRozmowy = 1;
- }
- }
- // ----------------------------------------------------------------------------
- package telefony;
- public class TelefonInternetowy extends Telefon {
- String identyfikator;
- boolean SprawdzPolaczenie() {
- return true;
- }
- }
- // --------------------------------------------------------------------------------
- package telefony;
- public class TelefonKomorkowy extends Telefon{
- String operator;
- void wyslijSMS(String numer, String tekst) {
- System.out.println("Wysylam sms o tresci: " + tekst + " do " + numer);
- }
- /*
- Modyfiaktory:
- public
- private
- protected
- default - brak modyfikatora
- */
Add Comment
Please, Sign In to add comment