以下のコードを実行しようとしていますが、正しい出力が得られません。
期待される出力「ようこそ新しいプログラマー」
実際の出力「新しい歓迎プログラマー」
class First {
public synchronized void display(String msg) {
System.out.print("["+msg);
System.out.println("]");
}
}
class Second {
String msg;
First fobj;
Second (First fp,String str) {
fobj = fp;
msg = str;
start();
}
public void run() {
synchronized(fobj) { //Synchronized block
fobj.display(msg);
}
}
}
public class SyncroBlock {
public static void main (String[] args) {
First fnew = new First();
Second ss = new Second(fnew, "welcome");
Second ss1 = new Second(fnew,"new");
Second ss2 = new Second(fnew, "programmer");
}
}
ここで私はどこで間違ったのですか?誰でも私を修正してもらえますか?