Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    883

    (java) costruttore super

    ho una classe A che estende AbstractAction e al suo interno ha seguente linea di codice

    super("nome_classe_A");


    Poi ho una classe B che estende la A dove volevo mettere la linea di codice

    super("nome_classe_B");

    Ques'ultima linea però invece di riferirsi ad AbstractAction mi punta alla classe A, come faccio dalla classe B ad arrivare al costruttore della classe astratta AbstractAction?

    esiste tipo:

    super.super(nome_classe_B);

    ?
    thx

  2. #2
    DOVE HAI MESSO I SUPER(....) ???

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    883
    contenuto del file ClasseA.java

    public class ClasseA extend AbstractAction{
    public Classe A() {
    super("nome_classeA");
    }

    contenuto del file ClasseB.java

    public class ClasseB extend ClasseA {
    public Classe B() {
    super("nome_classeB"); <--- riga errata
    }

    La riga errata non va bene perchè quel super si riferisce alla classeA, mentre io vorrei che quel super si riferisse alla classe AbstractAction

  4. #4
    Premessa a titolo informativo:
    super non si riferisce al costruttore ma alla superclasse.
    Invece super() si riferisce al costruttore della superclasse

    Dato che il primo super() é all'interno del costruttore ClasseA()

    Nel costruttore ClasseB() come hai scritto tu

    public ClasseB() {
    super("nome_classeB"); // richiami il costruttore ClasseA() che a sua volta richiama il costruttore della sua superclasse.
    }

    L'errore é che il costruttore ClasseA() non accetta parametri.

    quindi il costruttore ClasseA sarà

    public Classe A(String nome) {
    super(nome);
    }








  5. #5
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    883
    the per la delucidazione

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.