Wejscie/wyjscie obsluga

0

Witam,

Mam taki oto kod:

import java.io.*;
import java.util.*;
/**
 * Write a description of class Moja_testowa here.
 * 
 * @author (your name) 
 * @version (a version number or a date)
 */
public class Moja_testowa
{
    private String nazwisko;
    private int wiek;
    
    public Moja_testowa()
    {
        //Obsługa wyjścia
        PrintWriter wyjscie = new PrintWriter(new  BufferedWriter(new OutputStreamWriter(System.out)), true);
    
        //Obsługa wejścia
        BufferedReader wejscie = new BufferedReader(new InputStreamReader(System.in));
        StreamTokenizer st = new StreamTokenizer(wejscie);
    }
    
    public void operacja()
    {
    wyjscie.out.println("Ziom podaj swoje nazwisko i wiek");                     //tutaj
    wejscie.nextToken();                        //albo tutaj
    nazwisko = wejscie.sval;
    wejscie.nextToken();
    wiek = (int)wejscie.nval;
}
}

Przy kompliacji wyskakuje komunikat "cannot fin symbol - variable wyjscie'' w zaznaczonej linijce. Jak zmienie to na System.out.println to wyskakuje ten blad tylko na nastepnej lini na wejscie... Co jest nie tak, prosze o pomoc

0

masz lokalnie zadeklarowane zmienne: PrintWriter wyjscie, BufferedReader wejscie, StreamTokenizer st. lokalnie znaczy wewnątrz metody ( konstruktora ) a co za tym idzie widoczne są one tylko wewnątrz tej metody. Napisz to tak:

import java.io.*;
import java.util.*;
/**
 * Write a description of class Moja_testowa here.
 *
 * @author (your name)
 * @version (a version number or a date)
 */
public class Moja_testowa
{
    private String nazwisko;
    private int wiek;
 PrintWriter wyjscie;
BufferedReader wejscie;
StreamTokenizer st;
   
    public Moja_testowa()
    {
        //Obsługa wyjścia
        wyjscie = new PrintWriter(new  BufferedWriter(new OutputStreamWriter(System.out)), true);
   
        //Obsługa wejścia
        wejscie = new BufferedReader(new InputStreamReader(System.in));
        st = new StreamTokenizer(wejscie);
    }
   
    public void operacja()
    {
    wyjscie.println("Ziom podaj swoje nazwisko i wiek");                     //tutaj
    wejscie.nextToken();                        //albo tutaj
    nazwisko = wejscie.sval;
    wejscie.nextToken();
    wiek = (int)wejscie.nval;
}
}

1 użytkowników online, w tym zalogowanych: 0, gości: 1