Skip to content

Tự học Rust - Bài 14: Method Syntax (impl block)

TuanNDA
Published date:
Edit this post

Table of contents

Open Table of contents

1. Khối impl (Implementation)

Để định nghĩa phương thức cho một Struct, chúng ta sử dụng khối impl.

struct Rectangle {
    width: u32,
    height: u32,
}

impl Rectangle {
    // Đây là một phương thức (method)
    fn area(&self) -> u32 {
        self.width * self.height
    }
}

2. Gọi phương thức

Dùng dấu chấm . để gọi phương thức từ một thực thể (instance) của Struct.

let rect = Rectangle { width: 30, height: 50 };
println!("Diện tích: {}", rect.area());

3. Associated Functions (Hàm liên kết)

Đây là những hàm nằm trong khối impl nhưng không nhận self làm tham số. Chúng tương đương với “Static Method” trong các ngôn ngữ khác, thường dùng làm hàm khởi tạo.

impl Rectangle {
    // Hàm khởi tạo một hình vuông
    fn square(size: u32) -> Rectangle {
        Rectangle {
            width: size,
            height: size,
        }
    }
}

// Gọi bằng dấu hai chấm kép ::
let sq = Rectangle::square(10);

4. Nhiều khối impl

Trong Rust, một Struct có thể có nhiều khối impl riêng biệt. Điều này rất hữu ích khi bạn muốn phân tách logic hoặc tổ chức code sạch sẽ hơn.


Lời kết Bài 14

Method Syntax giúp bạn đóng gói dữ liệu và hành vi lại với nhau, làm cho mã nguồn trở nên trực quan và dễ bảo trì. Ở bài tiếp theo, chúng ta sẽ học về Traits - cách để định nghĩa các hành vi chung cho nhiều kiểu dữ liệu khác nhau.

Hẹn gặp lại các bạn!

Previous
Tự học Rust - Bài 5: Cấu trúc điều kiện If...Else
Next
Tự học Rust - Bài 4: Toán tử (Operators)