Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it L'avatar di koolk
    Registrato dal
    Sep 2007
    Messaggi
    89

    Un esempio sui costruttori

    Sto studiando l'uso dei costruttori e ho stilato il seguente programmino

    codice:
    // Prova sull'uso dei costruttori
    
    public class account
    {
        private double balance;
        
        public account(double myBalance)
        // Qui ho dichiarato il costruttore che riceve il valore iniziale
        // di balance
        {
            balance = myBalance;
        }
        
        public void setBalance(double myBalance)
        // setBalance aggiorna balance al nuovo valore che diamo in input
        {
            balance = balance + myBalance;
        }
        
        public double getBalance()
        // getBalance restituisce il valore di balance dopo l'operazione di
        // aggiunta di una somma al valore di balance    
        {
            return balance;
        }
    }
    E qui poi uso la classe account
    codice:
    // La classe balanceTest che sfrutta il costruttore
    import java.util.Scanner;
    
    public class balanceTest
    {
        public static void main(String args[])
        {
            account myAccount = new account(0.00);
            double amount;
            System.out.printf("Initial balance is: \n$%.2f ", myAccount.getBalance());
            System.out.println("Please type the amount to add to balance ");
            amount = input.nextDouble();
            myAccount.setBalance(amount);
            System.out.printf("Transaction successfull. Now the balance is: \n$.2f", myAccount.getBalance());
        }
    }
    Ma nella compilazione mi restituisce il seguente errore:
    balanceTest.java:12: cannot find symbol
    symbol : variable input
    location: class balanceTest
    amount = input.nextDouble();
    ^
    1 error

    Che può essere? Grazie a tutti in anticipo x l'aiuto
    Kool K

  2. #2
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,326
    Hai utilizzato un oggetto chiamato input che non hai mai dichiarato né istanziato prima (vedi grassetto qui sotto)...

    codice:
        public static void main(String args[])
        {
            account myAccount = new account(0.00);
            double amount;
            System.out.printf("Initial balance is: \n$%.2f ", myAccount.getBalance());
            System.out.println("Please type the amount to add to balance ");
            amount = input.nextDouble();
            myAccount.setBalance(amount);
            System.out.printf("Transaction successfull. Now the balance is: \n$.2f", myAccount.getBalance());
        }
    Oltretutto, ti consiglierei di adeguarti alla nomenclatura Java: i nomi delle classi con la lettera iniziale MAIUSCOLA, altrimenti ti troverai a fare confusione in futuro.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  3. #3
    Utente di HTML.it L'avatar di koolk
    Registrato dal
    Sep 2007
    Messaggi
    89
    Azz che errore banale!!

    Grazie inoltre del consiglio sulle classi!
    Kool K

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.