Problem z klasami

Odpowiedz Nowy wątek
2019-11-08 15:42
0

Cześć, zaczynam swoją przygodę z Javą. Tworze dynamiczną tablicę, którą uzupełniam liczbami losowymi. Niestety podczas wywoływania klasy wyskakuje mi taki błąd: error: non-static method (ZYX) cannot be referenced from a static context

import java.util.Random;
import java.util.Scanner;

class Table
{
    Random liczba = new Random();
    private int[] TempTab;
    int random;
    int licznik = 0;
    boolean flag;

    int[] GenerateRandom(int ilosc)
    {   

        int[] TempTab = new int[ilosc];

        do
        {
            random=liczba.nextInt(101);
            flag = true;

            for(int i = 0; i<licznik;i++) // Sprawdzenie czy w tablicy wystepuje juz liczba randomowa 
                if(TempTab[i]==random)
                    {
                        flag = false;
                        break;
                    }
                if(flag) TempTab[licznik++]=random;
        } while (licznik < ilosc);

        return TempTab;
    }

    void print(int[] TempTab)
    {
        for(int i=0;i<TempTab.length;i++)
        {
            System.out.println(TempTab[i]);
        }
    }

}

public class Main {
    public static void main(String args[]) {

    Scanner input = new Scanner(System.in);
    Table Tab = new Table();

    System.out.println("Ile liczb chcesz wylosowac?");
    int wielkosc = input.nextInt();

    Table.GenerateRandom(wielkosc);

    }
}
Nie "podczas wywołania" a podczas kompilacji - AnyKtokolwiek 2019-11-08 17:21

Pozostało 580 znaków

2019-11-08 15:47
0

Żeby użyć metody GenerateRandom potrzebujesz instancji klasy Table. Aby stworzyć instancję, poczytaj o tym co to jest konstruktor, i po co jest.
Jeżeli chcesz używać metod bez tworzenia instancji obiektu, poczytaj o słowie kluczowym static.

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

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