Акцентируйте внимание на комментарии в коде, правильно ли я уяснил мысль отталкиваясь от аналогии! и если нет, то поправьте, мне так проще усваивается информация!
package com.javarush.task.task03.task0319;
import java.io.*;
import java.io.InputStream;
import java.io.Reader;
import java.io.BufferedReader;
/*
Предсказание на будущее
*/

public class Solution {
    public static void main(String[] args) throws Exception {
   InputStream vvod = System.in;
        /*Базовый класс InputStream представляет классы, которые получают данные из различных источников:
        массив байтов,строка (String), файл и т.д. Что бы было понятнее я назвал этот класс ВВОД, т.е он считает то что мы должны ввести (Коля,3000,5)
        когда Класс InputStrea (vvod) считает информацию за счет (System.in) он поместит ее в память компьюетера, проще говоря, он положит (Колю,3000,5) в коробку,
        из которой мы в скором времени их достанем*/

    Reader readVvod = new InputStreamReader(vvod);
        /*используя класс (Read) который мы вызвали с библиотеки, мы создаем объект (readVvod) который будет считывать информацию с объекта (vvod) иными словами,
        объект (readVvod) получает коробку и смотрит что там, а там (Коля,3000,5) это та саммую коробка которую объект (vvod) создал*/

    BufferedReader soderjimoeKorobki = new BufferedReader(readVvod);
        /*BufferedRader мы вызвали с библиотеки JAVA. для того что бы считывать данные которые у нас хранятся в Буфере, если учитывть, тот факт что (Коля,3000 и 5),
        мы не вводим с клавиатуры, а они уже присутвуьт в компеляторе сайта JavaRash  на которм мырешаем задачи, то что бы считать эти данные (Коля,3000,5) мы используем
        (BufferedRader) который в своей задаче я назвал (soderjimoeKorobki) для наглядного примера.*/

    String name = soderjimoeKorobki.readLine();   // считываем строку имя (Коля типа, String)
    String aMoney = soderjimoeKorobki.readLine(); // считываем строку деньги (3000, типа String) ВНИМАНИЕ! (3000) в данной строке являеться не числом, а строкой, поэтому тип String.
    String bAge = soderjimoeKorobki.readLine();  // считываем строку время (5 лет, типа String)
    int cMoney = Integer.parseInt(aMoney); // создаем новую переменную типа int (dAge) преобразовать в ней тип String в тип Int, иными словами: (три тысячи) переводим в 3000, строку в число
    int dAge = Integer.parseInt(bAge); // аналогично, преобразуем строчку (5) в число (5) используя (Integer.parseInt)
    System.out.println(name+" получает "+cMoney+" через "+dAge+" лет.");

    }
}