Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2012
    Messaggi
    11

    Eleminare metodo ereditario

    Ciao a tutti, premetto che è il primo post che pubblico e quindi se ho fatto qualcosa di sbagliato fatemelo notare tranquillamente.

    Veniamo al problema:

    per scuola dovevamo creare una classe Orologio utilizzando la classe Ciclatore che ci dava il prof(il ciclatore è un contatore che quando arriva al valore finale si azzera).
    Ora io per farlo avevo esteso la classe ciclatore, ma il professore mi ha detto che andava bene perché così facendo potevo ancora utilizzare un metodo che non aveva senso poter utilizzare. (Lui voleva che usassimo 2 oggetti Ciclatore, uno per i minuti e uno per le ore)

    La mia domanda è la seguente: una volta che estendo una classe,posso, passatemi il termine, "inibire" dei determinati metodi?

    So che può non aver senso farlo, o almeno credo,ma vorrei sapere se si può fare

    Grazie

  2. #2
    No non puoi eliminarlo. Puoi sovrascriverlo con un metodo vuoto o con uno che lancia una
    eccezione di tipo UnsupportedOperationException

  3. #3
    Utente di HTML.it
    Registrato dal
    Mar 2012
    Messaggi
    11
    mi potresti spiegare come si utilizza l'UnsupportedOperationExeception?
    Se hai voglia senno cerco su google

  4. #4
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    4,157
    Allora vale il principio secondo cui quando erediti in realtà crei una relazione "isA" tra padre e figlia, il che vuole dire che la classe figlia è un caso della classe padre.
    Se hai la classe Animale e derivi da questa Mammifero, sai che un mammifero è anche un animale.
    Questo significa che Mammifero non può avere niente di meno di Animale, qualcosa in più si o modificare un comportamento si, ma niente in meno

    Significa anche che ad esempio non puoi ridurre la visibilità di un metodo/campo, puoi allargarla.

    Non puoi eliminare un metodo, come ti diceva giustamente MrBloom puoi svuotarlo di significato (non fargli fare niente) o lanciare un'eccezione

    Riguardo all'eccezione, non è come si usa una eccezione, come funziona il meccanismo delle eccezioni in java, l'istruzione è banale, ma documentarti ti aiuta a capire se per te è meglio lanciare un'eccezione oppure svuotare di significato il metodo e basta
    RTFM Read That F*** Manual!!!

  5. #5
    Utente di HTML.it
    Registrato dal
    Mar 2012
    Messaggi
    11
    Grazie per le risposte, credo che nel mio caso sia sufficiente svuotarlo.

    Grazie ancora.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.