#java
Вопрос:
Это будет правильно скомпилировано, однако в нем говорится, что в двух разных IDE нечего запускать. В чем, по-видимому, здесь проблема. Я добавил строки, чтобы просто напечатать привет для устранения неполадок, но все равно ничего.
import java.util.concurrent.*; //Creates class public class project42 { static class ExThread extends Thread { //Variables are set Semaphore sema; String theName; // public ExThread(Semaphore sema, String theName) { super(theName); this.sema = sema; this.theName = theName; } public void run() { //test For Westbound if (this.getName().equals("Westbound Cars")) { try { System.out.println(theName " are waiting"); sema.acquire(); System.out.println(theName " are attempting"); for (int i = 1; i lt; 6; i ) { System.out.println("Westbound: " i " is waiting"); Thread.sleep(1000); System.out.println("Westbound: " i " has crossed"); Thread.sleep(1000); } } catch (InterruptedException exc) { System.out.println(exc); } System.out.println(theName " has crossed the bridge"); sema.release(); } else { //Test for eastbound System.out.println(theName " are waiting"); try { System.out.println(theName " are waiting"); sema.acquire(); System.out.println(theName " are attempting"); for (int i = 1; i lt; 6; i ) { System.out.println("Eastbound " i "is crossing"); Thread.sleep(1000); System.out.println("Eastboud " i " is crossed"); Thread.sleep(1000); } } catch (InterruptedException exc) { System.out.println(exc); } System.out.println(theName " have crossed the bridge"); sema.release(); } } //main class public static void main(String[] args) throws InterruptedException { System.out.print("hi"); Semaphore sema = new Semaphore(1); //creates cars ExThread et1 = new ExThread(sema, "Westbound Cars"); ExThread et2 = new ExThread(sema, "WEastbound Cars"); //runs program et1.start(); et2.start(); et1.join(); et1.join(); } } }
Ответ №1:
Там нечего запускать, так как ваш основной находится во внутреннем классе (ExThread). Он должен быть во внешнем классе (project42).
Комментарии:
1. Я пытался переместить его, но безуспешно
2. O Я уверен, что будет больше, чем просто эта проблема, так как вам никогда раньше не удавалось запустить код, но перемещение main определенно решит проблему, упомянутую в вопросе. Если вы все еще не можете запустить его в своей среде разработки, вам, вероятно, нужно что-то решить в своей среде разработки. Не могу тебе сказать, что я не вижу твоей IDE.
3. это единственный файл, с которым он борется. поэтому я не думаю, что проблемы связаны с ide