Visualizzazione dei risultati da 1 a 5 su 5

Discussione: Incapsulamento

  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2019
    Messaggi
    23

    Incapsulamento

    Salve, sto imparando l'incapsulamento e il primo file riesco a compilarlo senza problemi, mentre la seconda no: mi dà errore di sintassi; dov'è che sbaglio?
    Grazie a chi vorrà aiutarmi!
    Vi lascio il codice.
    Classe che riesco a compilare.
    codice:
    package EserciziJava.esercizio2;
    
    
    public class Artista {
    private String nome;
    private String cognome;
    private int dataDiNascita;
    private String biografia;
    public void setNome(String n) {
    nome=n;
    }
    public String getNome() {
    return nome;
    }
    public void setCognome(String c) {
    cognome=c;
    }
    public String getCognome() {
    return cognome;
    }
    public void setDataDiNascita(int d) {
    dataDiNascita=d;
    }
    public int getDataDiNascita() {
    return dataDiNascita;
    }
    public void setBiografia(String b) {
    biografia=b;
    }
    public String getBiografia() {
    return biografia;
    }
    }
    Classe che mi dà errore.
    codice:
    package EserciziJava.esercizio2;
    
    
    public class DatiArtista {
    Artista artista1 = new Artista();
    artista1.setNome= (Antonello);
    artista1.setCognome(Venditti);
    artista1.setDataDiNascita(1949);
    artista1.setBiografia(Cantautore Italiano, considerato fra i piu popolari e tra i piu prolifici della cosiddetta scuola Romana,dal 1972, anno del suo debutto discografico.);
    }

  2. #2
    Quote Originariamente inviata da Lucym80 Visualizza il messaggio
    mentre la seconda no: mi dà errore di sintassi; dov'è che sbaglio?
    Beh, sì la seconda ha diversi errori di struttura/sintassi.

    1) Hai messo direttamente come membro della classe
    Artista artista1 = new Artista();

    che è corretto (è una variabile di istanza). Ma poi hai messo delle istruzioni che è scorretto (devi avere un metodo).

    2) La sintassi è comunque sbagliata

    artista1.setNome= (Antonello); // NO
    artista1.setNome("Antonello"); // SI


    idem per setCognome e setBiografia.

    Ma comunque queste 4 istruzioni le devi mettere in un metodo, quindi fai pure il classico main(String[] args) di ingresso, altrimenti l'applicazione non la avvii comunque.
    AndreaSenior Java developerSCJP 5 (91%) – SCWCD 5 (94%)
    Il mio nuovo sito-blog italiano sulla programmazione: andbin.it

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2019
    Messaggi
    23
    Quote Originariamente inviata da andbin Visualizza il messaggio
    Beh, sì la seconda ha diversi errori di struttura/sintassi.
    1) Hai messo direttamente come membro della classe
    Artista artista1 = new Artista();

    che è corretto (è una variabile di istanza). Ma poi hai messo delle istruzioni che è scorretto (devi avere un metodo).

    2) La sintassi è comunque sbagliata

    artista1.setNome= (Antonello); // NO
    artista1.setNome("Antonello"); // SI


    idem per setCognome e setBiografia.

    Ma comunque queste 4 istruzioni le devi mettere in un metodo, quindi fai pure il classico main(String[] args) di ingresso, altrimenti l'applicazione non la avvii comunque.
    Ciao, no, il main non l'ho inserito, perché l'esercizio prevede una terza classe con il main; quindi dovrei compilare il file, ma non eseguirlo .
    Mille grazie!

  4. #4
    Quote Originariamente inviata da Lucym80 Visualizza il messaggio
    quindi dovrei compilare il file, ma non eseguirlo .
    Ok ma nella classe DatiArtista devi comunque inserire almeno un metodo in cui mettere quelle istruzioni, altrimenti non ha senso/non compila.
    AndreaSenior Java developerSCJP 5 (91%) – SCWCD 5 (94%)
    Il mio nuovo sito-blog italiano sulla programmazione: andbin.it

  5. #5
    Utente di HTML.it
    Registrato dal
    Nov 2019
    Messaggi
    23
    Quote Originariamente inviata da andbin Visualizza il messaggio
    Ok ma nella classe DatiArtista devi comunque inserire almeno un metodo in cui mettere quelle istruzioni, altrimenti non ha senso/non compila.
    Ok, io però dovrei farlo sfruttando la riusabilità del codice, come dovrei scrivere per richiamare il metodo ad esempio "nome" che ho incapsulato nella prima classe?
    Scusa, ma sono all'inizio!
    Mille grazie!

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 © 2019 vBulletin Solutions, Inc. All rights reserved.