Giới thiệu
Java được phát triển bởi Sun Microsystems, do James Gosling khởi xướng và chính thức ra mắt vào năm 1995. Ngôn ngữ Java hiện nay rất phổ biến và được áp dụng trong nhiều lĩnh vực công nghệ khác nhau. Dưới đây là một số đặc điểm nổi bật của Java:
- Ngôn ngữ lập trình bậc cao: Java dễ đọc và dễ hiểu hơn so với các ngôn ngữ lập trình cấp thấp.
- Hướng đối tượng: Tất cả mọi thứ trong Java đều là đối tượng, giúp quản lý mã nguồn trở nên dễ dàng hơn.
- Không phụ thuộc vào nền tảng: Java biên dịch thành bytecode có thể chạy trên bất kỳ thiết bị nào có cài đặt JVM (Java Virtual Machine), giúp tăng tính linh hoạt.
- Đa luồng: Người lập trình có thể viết phương pháp để chương trình chạy nhiều luồng đồng thời.
- Hiệu năng cao: Java tối ưu hóa hiệu suất tốt hơn so với nhiều ngôn ngữ khác.
Cú pháp cơ bản
Các thành phần chính trong một chương trình Java
- Đối tượng (Object): Có các trạng thái và hành vi.
- Lớp (Class): Là khuôn để tạo nên đối tượng, định nghĩa các trạng thái và hành vi.
- Phương thức (Methods): Định nghĩa hành vi của lớp.
- Biến thực thể (Instance variables): Các biến không trùng lặp, dùng để lưu trữ trạng thái của đối tượng.
Chương trình đầu tiên
java
public class MyFirstJavaProgram {
/* Đây là chương trình java đầu tiên của tôi.
* Chương trình này sẽ in ra 'Hello World'.
*/
public static void main(String []args) {
System.out.println("Hello World"); // in ra Hello World
}
}
Các quy tắc cú pháp cơ bản
- Phân biệt chữ hoa chữ thường: trong Java,
Hello
vàhello
là khác nhau. - Tên lớp cần viết hoa chữ cái đầu tiên và chữ cái đầu tiên của mỗi từ: ví dụ,
MyFirstJavaProgram.class
. - Tên phương thức viết thường chữ cái đầu tiên, các chữ cái đầu tiên của các từ tiếp theo viết hoa: ví dụ,
myFirstJavaMethod()
. - Tên tệp chương trình phải trùng khớp với tên lớp: ví dụ,
MyFirstJavaProgram.java
. - Mỗi chương trình Java phải bắt đầu từ hàm
main(String[] args)
, điều này là bắt buộc.
Định danh trong Java (Java identifiers)
Tất cả các thành phần như lớp, phương thức, biến cần có tên (identifier) với các quy tắc sau:
- Bắt đầu bằng chữ cái, $ hoặc _.
- Không trùng với từ khóa trong Java.
- Tôn trọng quy tắc phân biệt chữ hoa chữ thường.
- Ví dụ định danh hợp lệ:
doSomeThing()
,abc
,$123
,_abc
. - Ví dụ định danh không hợp lệ:
123
,if
,-salary
.
Biến trong Java (Java variables)
- Biến cục bộ (Local variables)
- Biến lớp (Class variables)
- Biến thực thể (Instance variables)
Mảng (Array)
Mảng là một đối tượng lưu trữ nhiều biến cùng kiểu dữ liệu. Mảng được lưu trữ trong khu vực heap.
Enum trong Java
Enum là phép giới hạn một biến chỉ có thể có một giá trị trong số các giá trị đã được định nghĩa trước. Ví dụ:
java
class Phone {
enum Type {SAMSUNG, APPLE};
Type type;
public class PhoneTest {
public static void main(String []args) {
Phone myPhone = new Phone();
myPhone.type = Phone.Type.SAMSUNG;
System.out.println("Loại điện thoại của tôi: " + myPhone.type);
}
}
}
Từ khóa trong Java
Các từ khóa sau không được phép sử dụng trong định danh:
abstract | assert | boolean | break |
---|---|---|---|
byte | case | catch | char |
class | const | continue | default |
do | double | else | enum |
extends | final | finally | float |
for | goto | if | implements |
import | instanceof | int | interface |
long | native | new | package |
private | protected | public | return |
short | static | strictfp | super |
switch | synchronized | this | throw |
throws | transient | try | void |
volatile | while |
Chú thích (Comment)
Java hỗ trợ cả chú thích 1 dòng và nhiều dòng:
java
public class MyFirstJavaProgram {
/* Đây là chương trình đầu tiên của tôi.
* Chương trình này sẽ in ra 'Hello World'.
* Đây là ví dụ về chú thích nhiều dòng.
*/
public static void main(String []args) {
// Đây là ví dụ về chú thích 1 dòng
/* Đây cũng là một ví dụ chú thích nhiều dòng. */
System.out.println("Hello World");
}
}
Lớp và đối tượng
- Đối tượng (Object): Là thực thể mà có các trạng thái, thuộc tính và hành vi. Ví dụ, đối tượng con người có thể có thuộc tính như tên, tuổi và hành vi như làm việc.
- Lớp (Class): Là bản mô tả cho các đối tượng, quy định các thuộc tính và hành vi mà đối tượng sẽ có.
Ví dụ về một lớp:
java
public class Student {
String name;
int age;
String address;
String schoolName;
void learn() {
}
void eat() {
}
void sleep() {
}
}
Trong lớp có thể chứa nhiều kiểu biến khác nhau:
- Biến cục bộ (Local variables): Được định nghĩa trong các phương thức và sẽ bị hủy khi phương thức kết thúc.
- Biến thực thể (Instance variables): Được định nghĩa trong lớp, tồn tại cùng với đối tượng.
- Biến lớp (Class variables): Được định nghĩa với từ khóa
static
, tồn tại cùng với lớp.
Hàm khởi tạo (Constructors)
Hàm khởi tạo là khái niệm quan trọng trong lớp, tên hàm khởi tạo phải giống với tên lớp. Nó dùng để khởi tạo các thuộc tính ban đầu của đối tượng. Có thể có nhiều hàm khởi tạo trong một lớp.
java
public class Student {
String name;
int age;
String address;
String schoolName;
public Student() {
this.name = "Hung";
this.age = 20;
this.address = "Hanoi";
this.schoolName = "uet";
}
public Student(String name, int age, String address, String schoolName) {
this.name = name;
this.age = age;
this.address = address;
this.schoolName = schoolName;
}
}
Tạo đối tượng và thao tác với nó
java
public class Main {
public static void main(String[] args) {
Student student1 = new Student();
Student student2 = new Student("Kien", 21, "Hai Duong", "HUS");
student1.name = "Linh";
student2.learn();
}
}
source: viblo