Xin chào, Thế giới!

Tram Ho

Kiến thức nền tảng

Đây đã là ngôn ngữ lập trình thứ N trong hành trình tự học mà mình đang thực hiện các bài viết chia sẻ kiến thức tại đây. Vì vậy các bài viết tản mạn tại đây sẽ tránh giải thích lại những khái niệm căn bản mà mình đã nghiệm thu được khi học JavaScriptC.

Nếu như bạn đã cùng đồng hành từ Series Tự Học Lập Trình Web đầu tiên thì sẽ cần lướt qua thêm Sub-Series C của Series Một Số Mô Hình Lập Trình Phổ Biến để có thể bắt đầu đọc Series này. Còn trong trường hợp bạn đến với bài viết này từ một nguồn nào đó khác thì khả năng cao là bạn hiểu về các khái niệm lập trình căn bản và Java nhiều hơn so với một newbie mất gốc đang tự học lại như mình.

Ngôn ngữ & Môi trường

Ngôn ngữ Java được thiết kế bởi kỹ sư phần mềm James Gosling và ra mắt phiên bản đầu tiên vào năm 1995, hiện tại đang được phát triển bởi Oracle và được sử dụng trên hai nền tảng chính:

  • JVM - Java Virtual Machine – máy ảo Java được thiết kế để làm môi trường vận hành trung gian giữa lập trình viên và các hệ điều hành máy tính như Windows, Linux, BSD, v.v…
  • ART - Android RunTime – máy ảo Android được thiết kế để làm môi trường vận hành trung gian giữa lập trình viên và phiên bản Linux đặc biệt do Google hiệu chỉnh dành riêng cho các thiết bị Android.

Hai môi trường vận hành này cung cấp bộ giao diện lập trình API có phần khác nhau, tuy nhiên về mặt hỗ trợ các tính năng ở cấp độ cú pháp ngôn ngữ Java thì ART hỗ trợ đầy đủ các tính năng tương đương với JVM phiên bản LTS - Long Term Support.

Phần chung giữa hai bộ giao diện lập trình trên ARTJVM chủ yếu là về các cấu trúc dữ liệu dựng sẵn và các module hỗ trợ giao tiếp mạng network. Phần khác nhau là ART có thêm các thư viện hỗ trợ vẽ giao diện đồ họa người dùng và điều khiển các module phần cứng của các thiết bị Android, còn JVM có thêm các thư viện hỗ trợ dựng giao diện đồ họa người dùng cho môi trường máy tính nếu không kể thêm phiên bản hỗ trợ phát triển các ứng dụng doanh nghiệp J2EE:

Các bài viết trong Series này sẽ tản mạn trong phạm vi tính năng của ngôn ngữ Java ở cấp độ cú pháp và giao diện lập trình Android API. Tuy nhiên, để khởi đầu thì việc in kết quả vận hành code ra cửa sổ dòng lệnh của máy tính sẽ đơn giản hơn nhiều so với việc tạo ra và build một project Android vì vậy nên chúng ta sẽ chưa cần quan tâm tới ART.

Tải về JDK:

Sau khi tải về và cài đặt xong JDK, ở cửa sổ dòng lệnh, chúng ta có thể gõ lệnh kiểm tra phiên bản của trình biên dịch javac.

Trình biên dịch này sẽ giúp chuyển đổi code Java mà chúng ta viết sang code vận hành có thể hiểu được bởi máy ảo JVM. Sau đó, máy ảo JVM sẽ có nhiệm vụ chuyển tải lại logic công việc cần thực hiện cho hệ điều hành máy tính mà chúng ta đang sử dụng.

Chương trình Hello, World!

Code Java mà chúng ta viết sẽ được đặt trong các tệp văn bản thuần có định dạng .java. Mỗi tệp này sẽ chỉ được chứa duy nhất một khối code định nghĩa ở cấp tổng quan cao nhất của tệp, đó có thể là code định nghĩa một class, hay một interface, hay một enum.

Máy ảo JVM sẽ có thể bắt đầu thực thi chương trình từ một phương thức static main của một class bất kỳ như trong code ví dụ trên. Để biên dịch code chúng ta gõ lệnh:

Sau đó trong thư mục project sẽ xuất hiện thêm tệp thực thi cùng tên với tệp mã nguồn HelloWorld nhưng có định dạng .class. Lúc này để bắt đầu chạy chương trình bằng JVM, chúng ta gõ lệnh:

Nhìn chung thì chúng ta đang có cú pháp định nghĩa class đã khá quen thuộc như trong JavaScript. Ở đây Java được triển khai là một ngôn ngữ định kiểu tĩnh static-typing giống như C, vì vậy nên ở phía trước mỗi yếu tố định danh như tên trường dữ liệu, tên phương thức, tên tham số, tên biến cục bộ, chúng ta sẽ có thêm các từ khóa định kiểu.

Chúng ta đang có main đang được định nghĩa kiểu void, vì vậy nên không cần có lệnh return kết thúc; Tham số args là mảng các chuỗi ký tự được truyền nối tiếp vào sau lệnh java HelloWorld.class. Riêng từ khóa public được gọi là nhãn điều chỉnh mức hiển thị access modifier sẽ được đề cập đến trong một bài viết khác.

Chia sẻ bài viết ngay

Nguồn bài viết : Viblo