Прежде всего создаю класс для сообщения:
public class ArrayIsFull extends Exception{
private int size;
public ArrayIsFull(int UserSize) {
size = UserSize;
}
public String Message (){
return "Your array is full! Max size is: " + size;
}
}
После чего создаю интерфейс и объединяю его с предыдущим
public interface MyInterface <T> {
void put (T UserValue) throws ArrayIsFull;
}
Далее создаю рабочий класс для основной программы и тут у меня затруднения:
public class WorkerClass <T> implements Runnable, MyInterface<T> {
T [] array; // Массив
Thread flows; // Поток
private int size;
public WorkerClass(T [] UserArray) {
size = 0;
array = UserArray;
flows = new Thread (this);
flows.start();
}
// И все, тут я застрял, что делать то?:)
public void run() {
// TODO Auto-generated method stub
}
// Этот метод мне нужно поместить в поток.
public void put(T UserValue) throws ArrayIsFull {
if (size == array.length){
throw new ArrayIsFull (array.length);
}
array[size++] = UserValue;
}
}
Ну и соотвественно класс с точкой входа в программу:
public class MainClass {
public static void main(String[] args) {
WorkerClass workerclass = new WorkerClass (/*object*/);
try{
workerclass.flows.join();
} catch (InterruptedException message){
System.out.println(message.getMessage());
}
}
}
Буду благодарен за помощь:)