corsoJava
  • Corso JAVA
  • Introduzione linguaggio
  • Verifica tipi primitivi vs reference
  • Esercizi su equals
  • Introduzione su oggetti
  • Packages e import
  • Polimorfismo
    • Pit stop
  • Enum
  • String è speciale
  • Eccezioni
  • Nested Classes
  • Array, ArrayList e Hash Table
    • Esempio gioco carte
  • Linked data structures
  • Tipi generici
  • Comparing Java and C# Generics - Jonathan Pryor's web log
  • Contenitori
    • Esempi con classi container
  • Input/Output streams, Files
  • Basic I/O
  • Java IO Tutorial
  • Networking
  • I Thread e concorrenza
    • Esercizi multithreading
    • Thread interference
    • Esercizi thread interference
    • wait(), notify() e notifyAll() per la sincronizzazione tra i thread
    • Verifiche produttore/consumatore
    • Lock esplicito - java.util.concurrent.Locks
    • Semafori
    • Programmare con i thread
    • I Virtual Thread
    • Materiale
  • I Thread e networking
  • Esempi Java Socket Programming
  • Esempi Javascript Socket Programming
  • Messaggi datagram e invio multicast
  • Lambda Expression
  • Java Stream
  • Data Oriented Programming in Java
  • Java improved its 'Hello World' experience
  • Appendice A: utilizzo classe Scanner
  • Java For The Experienced Beginner
  • Modern Java
  • CodeJava - Java Core
  • Is OOP Relevant Today?
  • Book
Powered by GitBook
On this page
  1. Polimorfismo

Pit stop

PreviousPolimorfismoNextEnum

Last updated 4 years ago

Esercitazioni:

Cosa abbiamo visto finora:

  • Ereditarietà:

    • superclasse/sottoclasse;

    • costruttori: multipli, utilizzo this nel costruttore, utilizzo di super nel costruttore nella sottoclasse, costruttore di default, la catena dei costruttori;

    • utilizzo di super per chiamare un metodo della superclasse da una sottoclasse;

  • Polimorfismo:

    • fare degli esempi per spiegare il polimorfismo;

    • il concetto del late binding;

    • upper cast vs downcast;

Argomento

Esempio

Polimorfismo: esempio con Shape e Instrument

Costruttori multipli, sottoclassi ed utilizzo di super() per richiamare il costruttore della superclasse. Esempio Circle e GraphicCircle

Overridding dei metodi, esempio Circle e Cylinder e utilizzo di super per invocare metodo della superclasse.

Esempio per evidenziare il late binding: le sottoclassi di Shape generate random a runtime.

Polimorfismo utilizzato per costruire un metodo di sort() generico.

Esempio su Polimorfismo e downcast

http://www3.ntu.edu.sg/home/ehchua/programming/java/J3f_OOPExercises.html
https://github.com/checksound/Polimorfismo
https://github.com/checksound/EsempioCostruttoriEreditarieta
https://github.com/checksound/MethodOverridding-CircleAndCilinder
https://github.com/checksound/PolimorfismoRandomShapes
https://github.com/checksound/EsempioPolimorfismoComparable
https://github.com/checksound/EsempioGestioneTemperatura