Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    [C# - Java] Ereditarietà

    Scusate il tag d'introduzione equivoco ma questo è una sorta di crossover fra i due linguaggi

    Vi sottopongo un quesito banale sull'ereditarietà.

    In Java, una volta che nella classe figlia estendo la classe madre, quando nel costruttore della figlia voglio richiamare il costruttore della madre basta che scrivo super().

    Es. la mia classe madre è persona, che come costruttore prende string nome, string cognome.

    La mia classe figlio è studente che oltre a nome e cognome prende anche string matricola.

    Sapendo che il costruttore gestisce nome e cognome io basta che nel costruttore studente gestisco matricola, poi passo a persona nome e cognome, scrivendo super(nome,cognome).

    Ne evinco, ed insultatemi a morte se sbaglio, che se non voglio gestire nome e cognome come lo gestisce persone mi basta non chiamare super e gestirmeli ex novo nel costruttore studente...


    Ora, invece, in C# mi pare di aver capito che lui, di rif o di raf, comunque, nella classe figlia, richiama il costruttore della madre, anche se non lo specifico... esiste un modo per non richiamare il costruttore della madre?

    Grazie

  2. #2
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,463

    Moderazione

    Escludendo il riferimento esemplificativo a Java, la domanda riguarda C#, quindi sposto la discussione nel forum dedicato.

    Ciao!
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  3. #3
    Utente di HTML.it L'avatar di anx721
    Registrato dal
    Apr 2003
    Messaggi
    2,352

    Re: [C# - Java] Ereditarietà

    Originariamente inviato da Debiru
    Es. la mia classe madre è persona, che come costruttore prende string nome, string cognome.

    La mia classe figlio è studente che oltre a nome e cognome prende anche string matricola.

    Sapendo che il costruttore gestisce nome e cognome io basta che nel costruttore studente gestisco matricola, poi passo a persona nome e cognome, scrivendo super(nome,cognome).

    Ne evinco, ed insultatemi a morte se sbaglio, che se non voglio gestire nome e cognome come lo gestisce persone mi basta non chiamare super e gestirmeli ex novo nel costruttore studente...
    prova a scrivere queste classi in java senza chiamare ilcostruttore della superclasse e vedrai il compilatore come si inca**a

    A meno che nella classe madre non definisce un costruttore di default, cioè senza argomenti, in questo caso va bene perche il compilatore automaticamente chiamera quello come prima istruzione del costruttore della classe figlia. Ma se il cotruttore di default non c'è e te non invochi escplicitamente un costruttore della superclasse con super il compilatore non ti compila. Quindi è lo stesso che in C#

    Sun Certified Java Programmer

    EUCIP Core Level Certified

    European Certification of Informatics Professionals

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.