Java ra đời bằng sự ngẫu nhiên, nhóm dev bận xây set-top box, dọn dẹp C++. Khi hoàn tất thay đổi, họ khám phá ra Java và môi trường runtime.
Nhiều người biết, nhưng ai chưa biết: Java không phải tên gốc. Ban đầu là "Oak". Sun Marketing đổi tên khi nhận ra công ty "Oak" đã tồn tại.
Ngôn ngữ phổ biến toàn cầu, yêu thích bởi dev, thường đứng top 2 phổ biến nhất trong khảo sát.
3 tỷ điện thoại và counting chạy nhờ platform xây bằng Java.
Game nổi tiếng "Minecraft" viết bằng Java. Notch, tác giả, viết game bằng Java, sau được Microsoft mua, phát hành phiên bản C++ mới.
Từ khóa final dùng với class, biến, phương thức, field. Tất cả thuộc tính trở nên bất biến: final class không extends, final biến không đổi, final method không override, final field là hằng số.
Hai khía cạnh làm Java động: Java Instrumentation và Java Reflection. Instrumentation sửa class pre-compiled nếu code cần đổi runtime. Reflection xem biến private của class cụ thể.
Dùng C++, nhiều người bực bội với con trỏ (pointer). May mắn Java không có khái niệm pointer, vì người tạo nghĩ thêm pointer làm giảm độ bền vững ngôn ngữ.