Tổng quan về Java



Java có rất nhiều đặc điểm và tính năng nổi bật. Dưới đây là một số đặc điểm của Java mà bạn có thể dễ dàng biết và tìm hiểu:

  • Đơn giản

  • Hướng đối tượng

  • Độc lập nền tảng

  • Bảo mật

  • Robust

  • Độc lập cấu trúc

  • Portable

  • Dynamic

  • Thông dịch

  • Hiệu suất cao

  • Đa luồng (Multi-thread)

  • Distributed

Đơn giản

Bạn có thể hiểu rằng, đặc điểm đơn giản của Java là do:

Thứ nhất, cú pháp của nó dựa trên C++ (vì thế nó khá dễ dàng cho các sinh viên sau khi đã học C++ tại năm đầu đại học).

Thứ hai, gõ bỏ nhiều đặc điểm gây bối rối và hiếm khi được sử dụng chẳng hạn như các con trỏ tường minh, nạp chồng toán tử, …

Và cuối cùng, bạn không cần xóa các đối tượng mà không được tham chiếu, bởi vì hãy để những thứ đó cho Bộ dọn rác tự động (Garbage Collection) trong Java.

Hướng đối tượng

Hướng đối tượng nghĩa là chúng ta tổ chức phần mềm dưới dạng một sự kết hợp của nhiều loại đối tượng khác nhau mà kết hợp chặt chẽ cả về dữ liệu lẫn hành vi của chúng.

Lập trình hướng đối tượng (OOP) là một phương pháp làm đơn giản hóa việc phát triển và duy trì phần mềm bằng việc cung cấp một số qui tắc.

Một số khái niệm cơ bản của hướng đối tượng (OOP) là:

  • Đối tượng (Object)

  • Lớp (Class)

  • Tính kế thừa

  • Tính đa hình

  • Tính trừu tượng

  • Tính bao đóng

Độc lập nền tảng

Một Platform là môi trường phần cứng hoặc phần mềm trong đó một chương trình chạy. Có hai loại Platform: một loại dựa trên phần mềm (software-based) và một loại dựa trên phần cứng (hardware-based). Java cung cấp software-based platform. Java Platform khác với nhiều nền tảng khác ở chỗ nó chạy ở trên các nền tảng hardware-based khác. Nó có hai thành phần:

  • Runtime Environment

  • API (Application Programming Interface)

Java code có thể chạy trên nhiều nền tảng như Windows, Linux, Sun Solaris, Mac/OS, … Java code được biên dịch bởi Bộ biên dịch Compiler và được chuyển đổi thành Bytecode. Bytecode này là một code độc lập nền tảng bởi vì nó có thể chạy trên nhiều nền tảng khác nhau. Với lý do này, đến đây bạn có thể hiểu được tại sao khi nói về Java, người ta thường nói đến khẩu hiệu: Viết một lần, Chạy khắp nơi (Write Once and Run Anywhere).

Bảo mật

Java là an toàn bởi vì:

  • Không có con trỏ tường minh.

  • Chương trình chạy bên trong các hộp thiết bị ảo.

  • Classloader: Thêm sự bảo vệ bằng việc phân biệt riêng rẽ các package cho các lớp của hệ thống local file mà từ đó chúng được import với các file từ nguồn mạng.

  • Bytecode Vertifier: Kiểm tra các đoạn code để tìm ra các phần code không hợp lệ mà có thể truy cập trái phép tới các đối tượng.

  • Security Manager: Quyết định xem nguồn resource nào mà một lớp có thể truy cập chẳng hạn như đọc và ghi tới local disk.

Những tính năng bảo mật này được cung cấp bởi Ngôn ngữ Java. Ngoài ra, lập trình viên còn có thể cung cấp một số tính năng bảo mật khác thông qua SSL, JAAS, …

Robust

Bạn có thể hiểu đơn giản Robust nghĩa là mạnh mẽ. Java sử dụng hệ quản trị bộ nhớ mạnh mẽ. Đó là, Java sử dụng ít con trỏ hơn để tránh các vấn đề liên quan tới bảo mật. Bên cạnh đó còn có Trình dọn rác tự động (Garbage Collection) trong Java. Đó là Xử lý ngoại lệ (Exception Handling) và kiểm tra kiểu. Tất cả những thứ này là cho Java là Robust.

Độc lập cấu trúc

Đó là không có đặc điểm nào mà phụ thuộc vào trình triển khai, ví dụ như kích cỡ của kiểu dữ liệu gốc đã được thiết lập.

Portable

Chúng ta có thể mang Java Bytecode tới bất cứ nền tảng nào.

Hiệu suất cao

Với việc sử dụng Just-In-Time compilers, Java giúp nâng cao hiệu năng, giúp việc debug được dễ dàng cũng như nhanh chóng phát hiện lỗi.

Phân tán (Distributed)

Chúng ta có thể tạo các ứng dụng phân tán trong Java. RMI và EJB được sử dụng để tạo các ứng dụng này. Chúng ta có thể truy cập các file bằng việc gọi các phương thức từ bất cứ thiết bị nào trên internet.

Đa luồng (Multi-thread)

Một Thread là giống như một chương trình riêng rẽ, thực thi một cách đồng thời. Chúng ta có thể viết các chương trình Java mà xử lý nhiều tác vụ cùng một lúc bằng việc định nghĩa nhiều Thread. Lợi thế chính của Multi-thread là nó chia sẻ cùng bộ nhớ. Các Thread là quan trọng cho Multi-media, Web App, …

Mọi người cho thể tham gia khóa học thứ 4 của vietjackteam vào cuối tháng 09/2017 do anh Nguyễn Thanh Tuyền, admin vietjack.com trực tiếp giảng dạy tại Hà Nội. Chi tiết nội dung khóa học tham khỏa link : Khóa học Java.Các bạn học CNTT, điện tử viễn thông, đa phương tiện, điện-điện tử, toán tin có thể theo học khóa này. Khóa học cũng đưa 200 câu hỏi phỏng vấn java trên https://www.javatpoint.com/corejava-interview-questions vào nội dung để giúp các bạn dễ dàng vượt qua kì phỏng vấn

Các bạn ở xa học không có điều kiện thời gian có thể tham dự khóa Java online để chủ động cho việc học tập. Thông tin khóa học tại Khóa học Java Online trên Udemy

Mọi người có thể xem demo nội dung khóa học tại địa chỉ Video demo khóa học Offline

Loạt bài hướng dẫn của chúng tôi dựa một phần trên nguồn tài liệu của: Tutorialspoint.com

Follow fanpage của team https://www.facebook.com/vietjackteam/ hoặc facebook cá nhân Nguyễn Thanh Tuyền https://www.facebook.com/tuyen.vietjack để tiếp tục theo dõi các loạt bài mới nhất về Java,C,C++,Javascript,HTML,Python,Database,Mobile.... mới nhất của chúng tôi.



Demo một bài giảng trong khóa học online tại vietjackteam.