With Lombok
01 import lombok.Synchronized;
02
03 public class SynchronizedExample {
04 private final Object readLock = new Object();
05
06 @Synchronized
07 public static void hello() {
08 System.out.println("world");
09 }
10
11 @Synchronized
12 public int answerToLife() {
13 return 42;
14 }
15
16 @Synchronized("readLock")
17 public void foo() {
18 System.out.println("bar");
19 }
20 }
Vanilla Java
01 public class SynchronizedExample {
02 private static final Object $LOCK = new Object[0];
03 private final Object $lock = new Object[0];
04 private final Object readLock = new Object();
05
06 public static void hello() {
07 synchronized($LOCK) {
08 System.out.println("world");
09 }
10 }
11
12 public int answerToLife() {
13 synchronized($lock) {
14 return 42;
15 }
16 }
17
18 public void foo() {
19 synchronized(readLock) {
20 System.out.println("bar");
21 }
22 }
23 }