Попытка вызвать класс / метод в main - PullRequest
0 голосов
/ 06 ноября 2018

Я пытаюсь запустить содержимое этого класса в моем основном классе, однако я не могу найти способ сделать это. Я пробовал разные варианты от импорта package.class и создания экземпляров до других опций. Связано ли это с тем, как устроен этот класс. Я просто не хочу продолжать крутить колеса, если это невозможно. Логика вопроса очень ценится.

package stockapplication;


import java.util.Scanner;
import java.io.*;
import java.util.*;

public class Database {

public int empNum;
public String empFirst;
public String empLast;
public int empSal;

public Database(int c, String a, String b, int s) {
    empNum = c;
    empFirst = a;
    empLast = b;
    empSal = s;
}

public int getEmpNum() {
    return empNum;
}

public String getEmpFirst() {
    return empFirst;
}

public String getEmpLast() {
    return empLast;
}

public int getSalary() {
    return empSal;

}

public static void Stock() {

    Database[] array = new Database[3];
    Scanner sc = new Scanner(System.in);
    for (int i = 0; i < 3; i++) {
        System.out.printf("Please enter your employee number:");
        int c = sc.nextInt();
        System.out.printf("Please enter employee first name:");
        String a = sc.next();
        System.out.printf("Please enter employee last name:");
        String b = sc.next();
        System.out.printf("Please enter your salary:");
        int s = sc.nextInt();
        array[i] = new Database(c, a, b, s);

        try {
            File f = new File("Database1.txt");
            PrintWriter pw = new PrintWriter(new FileOutputStream(f, true));
            pw.append("\n" + c + "," + a + "," + b + "," + s + ",");
            pw.close();
        } catch (Exception e) {
        }
    }
}
}

1 Ответ

0 голосов
/ 06 ноября 2018

Добавьте еще один класс, где вы добавите свою логику и сохраните свой объект базы данных в качестве модели. Затем из вашего Main вызовите этот новый класс и запустите его метод.

public class ServiceDB {

    public ServiceDB() {
        //Empty
    }

    public void writeDB() {
        Database[] array = new Database[3];
        Scanner sc = new Scanner(System.in);
        for (int i = 0; i < 3; i++) {
            System.out.printf("Please enter your employee number:");
            int c = sc.nextInt();
            System.out.printf("Please enter employee first name:");
            String a = sc.next();
            System.out.printf("Please enter employee last name:");
            String b = sc.next();
            System.out.printf("Please enter your salary:");
            int s = sc.nextInt();
            array[i] = new Database(c, a, b, s);
            try {
                File f = new File("Database1.txt");
                PrintWriter pw = new PrintWriter(new FileOutputStream(f, true));
                pw.append("\n" + c + "," + a + "," + b + "," + s + ",");
                pw.close();
            } catch (Exception e) {
                // Never a good idea to leave it empty, at least print the error.
                e.printStackTrace();
            }
        }
    }

}

Главная

public static void main(String[] args) {
    ServiceDB serviceDB = new ServiceDB();
    serviceDB.writeDB();
}

Конечно, я пропускаю импорт. Если вам нужно, чтобы я добавил их, дайте мне знать.

...