public class JavaMain {
    public static void main(String[] args) {
       System.out.println("Start to learn NIO!");
    }
}

@@ -1,12 +1,311 @@
+import java.io.IOException;%0Aimport java.nio.ByteBuffer;%0Aimport java.nio.channels.AsynchronousFileChannel;%0Aimport java.nio.channels.CompletionHandler;%0Aimport java.nio.channels.WritePendingException;%0Aimport java.nio.file.*;%0Aimport java.util.ArrayList;%0Aimport java.util.Arrays;%0Aimport java.util.List;%0A%0A
 public class
@@ -316,18 +316,16 @@
 aMain %7B%0A
-  
   public
@@ -361,13 +361,51 @@
 gs) 
-%7B%0A   
+throws IOException, InterruptedException %7B%0A
     
@@ -443,18 +443,695 @@
 arn 
-N
 IO!%22);%0A
+%0A
   
+  List%3CString%3E stooges = Arrays.asList(%22Larry%22, %22Moe%22, %22Curly%22);%0A    stooges.stream().forEach(System.out::println);%0A%0A    Path f = Paths.get(%22/Users/daewon/code/til/scala/nio/src/main/java/JavaMain.java%22);%0A%0A    AsynchronousFileChannel ch = AsynchronousFileChannel.open(f.toAbsolutePath(), StandardOpenOption.READ);%0A    ByteBuffer buf = ByteBuffer.allocateDirect(2048);%0A%0A    ch.read(buf, 0, null, new CompletionHandler%3CInteger, Object%3E() %7B%0A      @Override%0A      public void completed(Integer result, Object attachment) %7B%0A        buf.flip();%0A        System.out.println(result);%0A      %7D%0A%0A      @Override%0A      public void failed(Throwable exc, Object attachment) %7B%0A      %7D%0A    %7D);%0A
   %7D%0A

Add Java Main