2017-06-05 102 views
-10

首先,不要害怕問題的大小kkkkk 我正在學習Java的OOP課程,並且老師已經傳遞了一些沒有時間寫代碼的內容。然後我有點懷疑!我在java中有3個類。 SalaAula,佩索阿和教授。如何在Java中打印值?

SalaAula.java

import java.util.Scanner; 

public class SalaAula { 
    private String nomeAluno; 
    private int idadeAluno; 
    private float pesoAluno; 
    private float alturaAluno; 
    private int matriculaAluno; 

    SalaAula() { 

     System.out.println("Seja bem vindo\n\n "); 
     Scanner entrada = new Scanner(System.in); 

     Professor professor = new Professor("Anderson", 32, 1.75f, 110f, 1010220, "Mestre"); 

     System.out.println("Qual seu nome? "); 
     nomeAluno = entrada.next(); 
     System.out.println("Qual a sua idade? "); 
     idadeAluno = entrada.nextInt(); 
     System.out.println("Qual o seu peso? "); 
     pesoAluno = entrada.nextFloat(); 
     System.out.println("Qual a sua altura?"); 
     alturaAluno = entrada.nextFloat(); 
     System.out.println("Qual a sua matrícula?"); 
     matriculaAluno = entrada.nextInt(); 

     //Pessoa pessoa = new Pessoa(nome, idade, peso, altura, peso, matricula); 
     System.out.println(new Professor()); 
     System.out.println("\n------------------------------------------"); 
     System.out.println("Nome:\tIdade:\tPeso:\tAltura:\tMatrícula:"); 
     System.out.println("------------------------------------------"); 
     System.out.println(nomeAluno + "\t" + idadeAluno + " anos\t" + alturaAluno + "\t" + pesoAluno + "\t" + matriculaAluno); 
     System.out.println("------------------------------------------"); 

    } 

    public static void main(String[] args) { 
     SalaAula principal = new SalaAula(); 

    } 
} 

Pessoa.java

class Pessoa { 
    private int idade; 
    private String nome; 
    private float altura; 
    private float peso; 
    private int matricula; 

    Pessoa() { 

    } 

    Pessoa(String nome, int idade, float altura, float peso, int matricula) { 
     this.idade = idade; 
     this.nome = nome; 
     this.altura = altura; 
     this.peso = peso; 
     this.matricula = matricula; 
    } 

    public String getNome() { 
     return this.nome; 
    } 

    public void setAltura(float altura) { 
     this.altura = altura; 
    } 

    public void setPeso(float peso) { 
     this.peso = peso; 
    } 

    public void setIdade(int idade) { 
     this.idade = idade; 
    } 

    public void setNome(String nome) { 
     this.nome = nome; 
    } 

    public int getIdade() { 
     return this.idade; 
    } 

    public float getAltura() { 
     return this.altura; 
    } 

    public float getPeso() { 
     return this.peso; 
    } 
    public void setMatricula(int matricula) { 
     this.matricula = matricula; 
    } 
    public int getMatricula() { 
     return this.matricula; 
    } 
} 

Professor.java

public class Professor extends Pessoa { 
    String nivelSuperior; 
    Professor() { 

    } 
    Professor(String nome, int idade, float altura, float peso, int matricula, String nivel) { 

     setNome(nome); 
     setIdade(idade); 
     setAltura(altura); 
     setPeso(peso); 
     setMatricula(matricula); 

     this.nivelSuperior = nivel; 
    } 
    public String getNivel() { 
     return this.nivelSuperior; 
    } 
    public void setNivel(String nivel) { 
     this.nivelSuperior = nivel; 
    } 
} 

這就是它!這是返回老師的信息:

 
Professor professor = new Professor("Anderson", 32, 1.75f, 110f, 1010220, "Mestre"); 

而學生信息,在這種情況下,將由用戶輸入。

我的問題是:如何打印教師信息+學生信息?

+1

你的意思與「打印老師什麼信息」?你期望輸出什麼?您試圖打印信息的哪部分代碼?你目前的產量是多少?我不知道你在哪裏打印信息 – Dennux

+1

,你是什麼意思「學生信息」?你沒有學生課。你有沒有嘗試在你的類中實現toString()? – Stultuske

+0

Denux, 我想讓你放棄的是: '教授教授=新教授(「安德森」,32,1.75樓,110f,1010220,「麥斯特」);' 以下簡稱爲信息用戶。 –

回答

0

我建議落實爲每個POJO的toString()方法,然後簡單地使用System.out.println(yourObject)

例如爲Pessoa類,你可以寫這樣的事情:

@Override 
public String toString() 
{ 
    return String.format("Pessoa [idade=%s, nome=%s, altura=%s, peso=%s, matricula=%s]", idade, nome, altura, peso, matricula); 
} 
+0

沒關係, 它解決了,我只需要配置它我的標準,但還是非常感謝你。我甚至記得老師已經在代碼中加入了@override。 謝謝。 –

+0

Freedev,帶我一個問題。 如果沒有放入的格式,我該如何取回?它即將看起來像這樣。 http://prntscr.com/fg4hpl –