
Apa Saja yang Baru di Java 11?
Java 11 sudah dirilis pada tanggal 25 September 2018 kemarin.
Banyak ‘pembersihan’ yang terjadi pada versi ini, seperti:
Java EE, CORBA, Java applets, dan Java FX sudah dihapus di dalam JDK (Java Development Kit). 1
Tapi tenang saja, mereka masih bisa di-install dari repositori Mavan.
Lalu, apa saja fitur terbaru pada Java 11? Apa saja yang akan dihapus?
Sebelum kita migrasi atau upgrade ke Java 11, kita harus tahu dua hal ini agar aplikasi yang kita bangun dengan Java, bisa berjalan dengan lancar.
Mari kita bahas.
Download & Install Java 11
Sebelum itu, jika kamu ingin mencoba Java 11, silahkan download JDK-nya:
Saya akan download OpenJDK 11 untuk Linux.

Nanti kita akan mendapatkan sebuah file arsip tar.gz
.

Setelah itu, ekstrak ke tempat yang aman.
Saya akan mengekstraknya ke direktori ~/apps/
.

Apabila di komputermu sudah ada Java, kamu bisa gunakan fitur update-alternatives untuk menentukan versi Java yang akan digunakan.
Atau bisa juga dengan menambahkan path Java ke dalam Environtment Variable.
Saya akan menggunakan Environment Variable, karena lebih mudah.
Caranya:
Tambahkan alamat path Java ke dalam file .bashrc
.
export JAVA_HOME=$HOME/apps/jdk-11
export PATH=$JAVA_HOME/bin:$PATH
Alamat path JAVA_HOME
merupakan lokasi saya menginstal atau meng-ekstrak JDK yang sudah di-download.

Berikutnya, tutup terminal dan buka lagi.
Maka ketika kita cek dengan which
dia akan mengarah ke sana.

Sekarang saya sudah menggunakan Java 11.
Mari kita coba fitur-fitur terbarunya.
1. Eksekusi Langsung Program Java
Ini yang menarik!
Di Java 11, kita bisa eksekusi langsung kode program Java, tanpa harus dikompilasi dengan perintah javac
.
Contoh: ContohProgram.java
package com.petanikode;
public class ContohProgram {
public static void main(String[] args) {
System.out.println("Contoh Program dengan Java 11");
}
}
Untuk menjalankannya, kita cukup ketik perintah:
java ContohProgram.java
Maka hasilnya:

Pada versi Java sebelumnya, kita harus kompilasi dulu souce code Java menjadi bytecode.
Barulah bisa dieksekusi.
Sekarang sudah tidak lagi.
Rasanya seperti menulis kode dengan bahasa Scripting seperti Javascript.
2. Javascript Nashorn engine akan Dihapus
Javascript Nashorn engine merupakan runtime engine—sama seperti V8 Engine pada Nodejs— untuk menjalankan Javascript di atas JVM (Java Virtual Machin).
Akan tetapi, tool ini sudah tidak akan digunakan lagi alias (deprecated).
Ketika kita coba jalankan jjs
, maka akan muncul peringatan "The jjs tool is planned to be removed from a future JDK release"
.

3. Method Baru pada String
Pada rilis Java 11 ini, terdapat beberapa method pada string yang ditambahkan, diantaranya:
Method repeat()
Method ini digunakan untuk mengulang atau membuat perulangan dari sebuah String.
Hampir setiap bahasa pemrograman memiliki method atau fungsi repeat()
. Sedangkan di Java, baru ditambahkan pada Java 11.
Pada Python dan Ruby, kita bisa gunakan operator *
untuk mengulang sebuah string.
print("ha" * 30) # python
puts "ha" * 30 # ruby
Pada PHP, kita bisa gunakan fungsi str_repeat()
.
echo str_repeat("ha", 30);
Nah, pada Java, dia sama seperti Javascript, yaitu menggunakan method repeat()
.
Contoh:
var teks = "ha";
teks.repeat(50);
Percobaan pada jshell
.

Oya, jsehll
(java shell) merupakan console Java. Fitur ini mulai ditambahkan pada Java 9.
Lalu kata kunci var
untuk membuat variabel, baru ditambahkan pada Java 10.
Method strip()
Pernah dengar fungsi atau method trim()
?
Ya, kurang lebih fungsi strip()
sama seperti trim()
. Yaitu: untuk menghapus white space pada String.
Tetapi method strip()
punya dua (method) saudara lagi, yaitu: stripTrailing()
dan stripLeading()
.
stripTrailing()
akan menghapus white space yang ada di belakang;stripLeading()
akan menghapus white space yang ada di depan.strip()
akan menghapus white space yang ada di depan dan belakang.
Percobaan pada jshell
.

Sebenarnya method ini sudah pernah ditanyakan 7 tahun yang lalu di Stack Overflow. 2 Mengapa baru sekarang ditambahkan ya…? 😊

Method isEmpty()
dan isBlank()
Kamu pasti sudah bisa menebak apa fungsi dari method ini.
Yap, keduanya untuk mengecek: apakah string-nya kosong atau tidak.
Apa perbedaan isEmpty()
dan isBlank()
?
Method isEmpty()
hanya akan bernilai true
saat sebuah string diisi dengan ""
. Apabila kita isi dengan spasi seperti ini: " "
, maka method isEmpty()
akan mengembalikan nilai false
.
Sedangkan isBlank()
lebih cerdas. Ia mampu mengetahui, kalau isi string tersebut adalah spasi (white space).
Mari kita coba:

Method lines()
Method ini berfungsi untuk mengekstrak sebuah string menjadi Stream berdasarkan garis baru.
Contoh:
var title = "Saya\nsedang\nbelajar\njava\ndi\nPetanikode";
var tiileStream = title.lines();
Perhatikan simbol \n
yang ada di dalam string variabel title
. Simbol ini berfungsi untuk membuat garis baru.
Saat kita menggunakan method lines()
pada string ini, maka tiap-tiap kata aka menjadi sebuah stream.

4. Method Baru pada Class Files
Kalau tadi method-method yang baru ditambahkan pada Java 11 untuk operasi String. Maka yang ini untuk operasi File.
Ada dua method baru:
readString()
untuk membaca teks string dari File;writeString()
untuk menulis teks string ke File.
Contoh:
Menulis string ke file dengan method writeString()
package com.petanikode;
import java.nio.file.Path;
import java.nio.file.Files;
import java.io.IOException;
public class TulisFile {
public static void main(String[] args) throws IOException {
var words = "Tutorial java untuk pemula\noleh: Petani Kode";
Files.writeString(Path.of("words.txt"), words);
}
}
Hasilnya:

Membaca string dari file dengan method readString()
package com.petanikode;
import java.nio.file.Path;
import java.nio.file.Files;
import java.io.IOException;
public class BacaFile {
public static void main(String[] args) throws IOException {
var fileName = "words.txt";
var data = Files.readString(Path.of("words.txt"));
System.out.println(data);
}
}
Hasilnya:

Kini kita lebih mudah untuk menulis dan membaca file di Java.
Tidak perlu lagi pakai ‘buffer-bufferan’ 😄 seperti ini:
import java.io.*;
public class ReadWriteFile {
public static void main(String args[]) throws IOException {
FileInputStream in = null;
FileOutputStream out = null;
try {
in = new FileInputStream("input.txt");
out = new FileOutputStream("output.txt");
int c;
while ((c = in.read()) != -1) {
out.write(c);
}
}finally {
if (in != null) {
in.close();
}
if (out != null) {
out.close();
}
}
}
}
5. HTTP Client kini Menjadi Library Standar
Pada Java versi sebelumnya, Kita bisa melakukan HTTP Request dengan class HttpURLConnection
.
Akan tetapi, HttpURLConnection
memiliki beberapa masalah:
- Class ini didesain untuk berbagai macam protokol (seperti:
ftp
,gopher
, dll.); HttpURLConnection
Sulit digunakan karena dokumentasinya minim;HttpURLConnection
bekerja pada mode blocking saja (seperti: 1 thread untuk requset/response);HttpURLConnection
sulit di-maintain;
Solusi alternatifnya:
Kita bisa menggunakan library pihak ketiga seperti Unirest, OkHTTP, Apache HTTP Client, Android Asynchronous Http Client, dll.
Kini, kita tidak perlu lagi menggunakan library pihak ketiga. Karena HTTP Client sudah menjadi library standar di Java 11.
Lokasinya ada di package:
java.net.http
Contoh:
package com.petanikode;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.net.URI;
public class RequestPetanikode {
public static void main(String[] args) {
var client = HttpClient.newHttpClient();
var request = HttpRequest.newBuilder()
.uri(URI.create("https://www.petanikode.com"))
.build();
client.sendAsync(request, HttpResponse.BodyHandlers.ofString())
.thenApply(HttpResponse::body)
.thenAccept(System.out::println)
.join();
}
}
Hasilnya:

Biasanya library ini sering digunakan untuk:
- Mengakses RESTful API atau web service;
- Melakukan Scrape data pada web;
- Membuat Bot;
- dan lain-lain.
Baca juga: Cara Install Netbeans 10 di Linux | Kenapa Bahasa Pemrograman Java Kurang Cocok untuk Pemula? | Cara Menggunakan Banyak JDK di Linux agar tidak Bentrok
Recent Post
-
YouTube Uji Coba Paket Premium Duo Hemat untuk Dua Orang
-
RSUD Bunda Gunakan Teknologi Robotik Gen 2 untuk Operasi yang Lebih Aman
-
Google Bocorkan Desain Android Terbaru yang Lebih Ekspresif
-
Apple Kirim Peringatan Serangan Spyware ke Pengguna iPhone
-
Mistral AI, Inovasi Kecerdasan Buatan dari Prancis yang Saingi ChatGPT
-
TikTok Didenda Rp 9,8 Triliun Karena Ketahuan Kirim Data Pengguna ke China
-
Amazon Nova Premier Hadir dengan Kapasitas Konteks hingga 1 Juta Token
-
Fortnite Kembali Hadir di App Store, Apple Kalah di Pengadilan
Categories
- Business (150)
- Company Profile (3)
- Developer Connect (126)
- HR and L&D (23)
- Human Reasearch and Development (15)
- Landing Page (2)
- Marketing (27)
- Media Relations (72)
- News (39)
- Public Relations (48)
- Story (8)
- Technology (364)
- Tips and Trick (73)
- Toko Online (2)
- Uncategorized (25)
- Video & Tips (13)
- Wesclic (30)
Tags
Read More
YouTube Uji Coba Paket Premium Duo Hemat untuk Dua Orang
titah 08/05/2025 0YouTube selalu berusaha memberikan pengalaman terbaik bagi penggunanya. Untuk itu, mereka kini tengah menguji coba paket Premium Duo, yang memungkinkan dua orang untuk berbagi langganan…
RSUD Bunda Gunakan Teknologi Robotik Gen 2 untuk Operasi yang Lebih Aman
titah 08/05/2025 0Teknologi di dunia medis terus berkembang dan membawa banyak perubahan. Salah satu inovasi terbaru yang…
Google Bocorkan Desain Android Terbaru yang Lebih Ekspresif
titah 08/05/2025 0Google selalu berusaha meningkatkan pengalaman pengguna Android melalui desain yang lebih menarik dan mudah digunakan.…
Apple Kirim Peringatan Serangan Spyware ke Pengguna iPhone
titah 08/05/2025 0Perangkat digital, terutama smartphone, kini menjadi bagian penting dalam kehidupan sehari-hari. Mulai dari komunikasi hingga…
Mistral AI, Inovasi Kecerdasan Buatan dari Prancis yang Saingi ChatGPT
titah 08/05/2025 0Mistral AI, sebuah perusahaan asal Prancis, mulai mencuri perhatian dunia dengan kemajuan teknologi kecerdasan buatannya.…
Categories
- Business (150)
- Company Profile (3)
- Developer Connect (126)
- HR and L&D (23)
- Human Reasearch and Development (15)
- Landing Page (2)
- Marketing (27)
- Media Relations (72)
- News (39)
- Public Relations (48)
- Story (8)
- Technology (364)
- Tips and Trick (73)
- Toko Online (2)
- Uncategorized (25)
- Video & Tips (13)
- Wesclic (30)
Popular Tags