Sunday, September 10, 2017

Bài 4 - Đối tượng

Copy đoạn code sau cho vào trong Playground
func show(){
print("Đây là dòng chữ ví dụ")
}
show()
class vidu{
func tinhnhan(a:Int, b:Int)->Int{
let c=a*b
return c
}
}

Ta thấy màn hình chỉ chạy ra dòng chữ "Đây là dòng chữ ví dụ"
Đó là vì phương thức tinhnhan hiện giờ đang nằm trong class vidu, chưa dùng nó nên chưa có gì.
Thêm các dòng sau vào
var tinh =  vidu();
let so=10;
let so2=12;
tinh.tinhnhan(so,b:so2)

Việc ta vừa làm chính là tạo đối tượng và sử dụng nó.
Dòng var tinh =  vidu() tạo ra đối tượng tinh của lớp vidu
Bên dưới ta dùng đối tượng kèm dấu chấm để gắn vào phương thức của lớp gốc là dùng được.
Vậy bạnchỉ cần biết cả dòng đó tạo ra đối tượng để ta dùng các phương thức nằm ở một lớp khác.
Khi bạn làm ứng dụng, nó có thể rất dài, có nhiều class, có phương thức phải dùng trong nhiều class. Bạn không cần copy nó đi mọi chỗ mà cứ để đó, chỉ cần dùng dòng code mẫu tạo ra một đối tượng với tên tùy chọn. Rồi gắn đối tượng đó với phương thức trong lớp qua dấu chấm là dùng được phương thức đó.
Hãy tạo một class có tên vidu2, trong đó có phương thức tinhcong
class vidu2{
func tinhcong(a:Int,_ b:Int)->String {
let c=a+b
return"Kết quả là " + String(c)
    }

}
var doituong =  vidu2();
doituong.tinhcong(so,so)

Ta thấy đối tượng là cách để ta sử dụng class, muốn dùng phương thức trong một class nào đó thì ta tạo ra đối tượng để dùng.
Hãy tự thêm các phương thức khác vào class để thực hành.Sửa tên đối tượng đi, chỗ doituong thay bằng cái gì khác, chạy thử, đó gọi là đang truy xuất vào phương thức trong một lớp khác.
Đến đây bạn cũng đã rõ lớp là gì, việc chúng ta tạo các class như vidu, vidu2 chính là các lớp. Nói đơn giản thì lớp là các dòng lệnh nằm trong một cấu trúc mở đầu bằng class Tên lớp{ và kết thúc bằng cái ngoặc đóng }
Định nghĩa này nó hơi buồn cười, vậy hãy thử đọc cái bài bản xem:
“Lớp là một khái niệm dùng để biểu diễn một tập các đối tượng, lớp có phương thức và thuộc tính”.
Nghe có vẻ hàn lâm hơn nhưng khi mới học, bạn có đọc hàng trăm lần cũng chả ích gì. Bạn cứ code đi, tự mình tạo một class mới với các phương thức bên trong. Làm được rồi đọc lại cái định nghĩa hàn lâm bạn sẽ hiểu nó dễ dàng.
Khi đã quen, hiểu được phương thức, đối tượng là bạn đã có thể bắt tay vào làm cái gì đó rồi.
Liệu bạn có thấy nó đơn giản quá, ai cũng học được ?

Chỉ từ những thành phần cơ bản như thế, người ta có thể làm ra được nhiều thứ rất khó tin. Cũng như dùng một cái que và một sợi dây để xoi gỗ ra lửa vậy. Trông thì rất đơn giản đấy, nhưng liệu bạn có làm được hay không ?

No comments:

Post a Comment