Bài 2: Các phần tử cơ bản của ngôn ngữ java

B0ydu0ngw3

Thanh Niên Xóm
Java bao gồm các phần tử chính:
+Lớp và phương thức (classes & Methods)
+Kiểu dữ liệu
+Biến số
+Toán tử
+Cấu trúc điều kiện

1.1: Lớp trong java:
Lớp được khai báo với cú pháp
Mã:
class tenlop{
     
	var_datatype variablename;
	:
 
	met_datatype methodname(parameter_list)
	:
}
1.2: Các lớp lồng nhau
Việc định nghĩa một lớp bên trong một lớp khác được gọi là “xếp lồng” (Nesting)
Các kiểu xếp lồng:
Tĩnh (Static)
Động (Non-static)
2: Kiểu dữ liệu: Gồm 2 loại
+Kiểu dữ liệu tham chiếu
+Kiểu dữ liệu cơ sở
2.1: Kiểu dữ liệu cơ sở
+byte: Dùng để lưu dữ liệu kiểu số nguyên có kích thước một byte (8 bít). Phạm vi biểu diễn giá trị từ -128 đến 127. Giá trị mặc định là 0.
+char: Dùng để lưu dữ liệu kiểu kí tự hoặc số nguyên không âm có kích thước 2 byte (16 bít). Phạm vi biểu diễn giá trị từ 0 đến u\ffff. Giá trị mặc định là 0.
+boolean: Dùng để lưu dữ liệu chỉ có 2 trạng thái đúng hoặc sai Đôj lớn chỉ có 1 bit). Pham vi biểu diễn là {"True", "false"}> Giá trị mặc định là false
short: Dùng để lưu trữ dữ liệu có kiểu số nguyên, kích cỡ 2 byte (16 bit). Pham vi biểu diễn giá trị từ -32768->32767. Giá trị mặc định là 0.
int: Dùng để lưu trũ dữ liệu có kiểu số nguyên, kích cỡ 4byte (32 bit). Pham vi biểu diễn giá trị từ -2147483648->2147483647. Giá trị mặc định là 0.
float: Dùng để lưu trữ dữ liệu có kiểu số thực, kích cỡ 4byte (32 bit). Giá trị mặc định là 0.0f
double: Dùng để lưu trữ dữ liệu có kiểu số thực có kích thước lên đến 8byte. giá trị mặc định là 0.00d.
long: dùng để lưu dữ liệu có kiểu số nguyên có kích thước lên đến 8 byte. Gia trị mặc định là 0l.
2.2: Kiểu dữ liệu tham chiếu
mảng: 1 mảng của các dữ liệu cùng kiểu
class: Dữ liệu lớp đối tượng do con người dùng định nghĩa. Chứa tập các thuộc tính và phương thức.
interface: Dữ liệu kiểu lớp giao tiếp do người dùng định nghĩa. Chứa các phương thức của giao tiếp
2.3: ép kiểu
Kiểu dữ liệu này được chuyển đổi sang 1 kiểu dữ liệu khác
3: Biến số
Được khai báo với cú pháp:
Mã:
dataType varName;
Trong đó dataType là kiểu dữ liệu của biến, varName là tên biến
4: Các toán tử
Các loại toán tử:
Toán tử số học (Arithmetic operators)
Toán tử dạng Bit (Bitwise operators)
Toán tử so sánh (Relational operators)
Toán tử logic (Logical operators)
Toán tử điều kiện (Conditional operator)
Toán tử gán (Assignment operator)
4.1: Toán tử số học Arithmetic Operators
+ Addition (Phép cộng)
- Subtraction (Phép trừ)
* Multiplication (Phép nhân)
/ Division (Phép chia)
% Modulus (Lấy số dư)
++ Increment (Tăng dần)
-- Decrement (Giảm dần)
+= Phép cộng và gán
-= Phép trừ và gán
*= Phép nhân và gán
/= Phép chia và gán
%= Phép lấy số dư và gán
4.2: Toán tử Bit (Bitwise Operators)
~ Phủ định (NOT)
& Và (AND)
| Hoặc (OR)
^ Exclusive OR
>> Dịch sang phải (Shift right)
<< Dịch sang trái (Shift left)
4.3:Toán tử so sánh (Relational Operators)
== So sánh bằng
!= So sánh khác
< Nhỏ hơn
> Lớn hơn
<= Nhỏ hơn hoặc bằng
>= Lớn hơn hoặc bằng
4.4Toán tử Logic (Logical Operators )
&& Logical AND
|| Logical OR
! Logical unary NOT
4.5:Toán tử điều kiện (Conditional Operator)
Cú pháp
Biểu thức 1 ? Biểu thức 2 : Biểu thức 3;
 
Biểu thức 1
Điều kiện kiểu Boolean trả về giá trị True hoặc False
Biểu thức 2
Trả về giá trị nếu kết quả của mệnh đề 1 là True
Biểu thức 3
Trả về giá trị nếu kết quả của mệnh đề 1 là False
4.6: Toán tử gán (Assignment Operator)
= Assignment (Phép gán)
Giá trị có thể được gán cho nhiều biến số
Ví dụ
a = b = c = d = 90;
4.7: Thứ tự ưu tiên của các toán tử
Thứ tự Toán tử
1. trong ngoặc tính trước
2. Các toán tử đơn như +,-,++,--
3. Các toán tử số học và các toán tử dịch như *,/,+,-,<<,>>
4. Các toán tử quan hệ như >,<,>=,<=,= =,!=
5. Các toán tử logic và Bit như &&,II,&,I,^
5. Các toán tử gán như =,*=,/=,+=,-=

Thứ tự của các toán tử có thể được thay đổi bằng cách sử dụng các dấu ngoặc đơn trong mệnh đề
5: Các ký tự định dạng xuất dữ liệu
\n Xuống dòng mới
\r Chuyển con trỏ đến đầu dòng hiện hành
\t Chuyển con trỏ đến vị trí dừng Tab kế tiếp (ký tự Tab)
\\ In dấu \
\’ In dấu nháy đơn (’)
\’’ In dấu nháy kép (’’)

6. những từ khóa của java
abstract boolean break byte case catch
char class const continue default do
double else extends final finally float
for goto if implements import instanceof
int interface long native new package
private protected public return short static
super switch synchronized this throw throws
transient try void volatile while
7: Khai báo mảng
Ba cách để khai báo mảng:
Mã:
datatype identifier [ ];
Mã:
datatype identifier [ ] = new datatype[size];
Mã:
datatype identifier [ ]= {value1,value2,….valueN};

8: Phương thức (Methods in Classes)
Phương thức được định nghĩa như là một hành động hoặc một tác vụ thật sự của đối tượng
Cú pháp
Mã:
access_specifier modifier datatype method_name(parameter_list)
{	
//body of method
}
Ví dụ
Mã:
class Temp {	
    static int x = 10;                       // variable
    public static void show( ) {    // method
        System.out.println(x);
    }
    public static void main(String args[ ]) {	
       Temp t = new Temp( );             // object 1
        t.show( );                                 // method call
       Temp t1 = new Temp( );         // object 2
        t1.x = 20; 
        t1.show( );          	                                                                                                        
   }
}
8.1: Truy cập xác định (Access specifiers)
public
private
protected
8.2: Method Modifier
static
abstract
final
native
synchronized
volatile
8.3:Những phương thức được nạp chồng : (Methods Overloading)
Cùng ở trong một lớp
Có cùng tên
Khác nhau về danh sách tham số

Những phương thức được nạp chồng là một hình thức đa hình (polymorphism) trong quá trình biên dịch (compile time)
8.4:Ghi đè phương thức (Methods Overriding)
Những phương thức được ghi đè:
Có mặt trong lớp cha (superclass) cũng như lớp kế thừa (subclass)
Được định nghĩa lại trong lớp kế thừa (subclass)

Những phương thức được ghi đè là một hình thức đa hình (polymorphism) trong quá trình thực thi (Runtime)
8.5:Phương thức khởi tạo (Class Constructors)
Là một phương thức đặc biệt dùng để khởi tạo giá trị cho các biến thành viên của lớp đối tượng
Có cùng tên với tên lớp và không có giá trị trả về
Được gọi khi đối tượng được tạo ra
Có 2 loại:
Tường minh (Explicit constructors)
Ngầm định (Implicit constructors)
8.6:Phương thức khởi tạo của lớp dẫn xuất (Derived class constructors)
Có cùng tên với lớp dẫn xuất (subclass)
Mệnh đề gọi constructor của lớp cha (superclass) phải là mệnh đề đầu tiên trong constructor của lớp dẫn xuất (subclass)
9: Các câu lệnh điều khiển
Điều khiển rẻ nhánh:
+Mệnh đề if-else
+Mệnh đề switch-case

Vòng lặp (Loops):
+Vòng lặp while
+Vòng lặp do-while
+Vòng lặp for
9.1: Mệnh đề if-else

Cú pháp
Mã:
if (condition) 
{
	action1 statements;
}
else
{
	action2 statements;
}
9.2: Mệnh đề switch- case
Cú pháp
Mã:
switch (expression)
	{
		case 'value1': action1 statement(s);
			           break;
 		case 'value2': action2 statement(s);
			           break;
		:
		:
 		case 'valueN': actionN statement(s);
		 	            break;
 		default:  default_action statement(s); 
	}

9.3: Vòng lặp while
Mã:
while(condition) 
	{
			action statements;
			:
			:
	}
9.4: vòng lặp do-while
Cú pháp
Mã:
do 
	{
		action statements;
		:
		:

	} while(condition);
9.5: Vòng lặp for
Cú pháp:
Mã:
for(initialization statements; condition; increment statements)
   		{
			action statements;
			:
			:
  	 }

Lý thuyết bài 2 ta có thể tạm dừng tại đây. Chúc các bạn học vui vẻ
 
Bên trên