Video: Lập trình Android A-Z – Bài 17: Quy trình thiết kế ứng dụng 2025
Khi lập trình ứng dụng Android của bạn với Java, bạn có thể sử dụng trình getters và setters. Trong mã này, các lớp
UseAccount
và
UseAccountFromOutside
có thể thiết lập tài khoản
customerName
của tài khoản và tải tài khoản
customerName
:
hiện tại của tài khoản. customerName = "Occam";
Tên chuỗiBackup = tài khoản. tên khách hàng;
Tuy nhiên, không phải lớp
UseAccount
cũng không phải lớp
UseAccountFromOutside
có thể bắt chước với trường
internalIdNumber
của tài khoản.
Nếu bạn muốn một lớp như
UseAccount
để có thể nhận
internalIdNumber
của tài khoản hiện tại
nhưng không thay đổi số
internalIdNumber của tài khoản >? (Trong nhiều trường hợp, nhận được thông tin là cần thiết, nhưng thay đổi thông tin hiện có là nguy hiểm.) Bạn có thể làm tất cả điều này với một getter phương pháp. Gói
. allyourcode. ngân hàng;
tài khoản lớp công cộng {
public String customerName;
private int internalIdNumber;
Địa chỉ chuỗi;
Chuỗi điện thoại;
public int socialSecurityNumber;
int accountType;
cân bằng đôi;
public static int findById (int internalIdNumber) {
Tài khoản foundAccount = new Account ();
// Mã để tìm tài khoản đi ở đây.
trở lại được tìm thấyTài khoản. internalIdNumber;
}
public int getInternalIdNumber () {
return internalIdNumber;
}
}
Với lớp
Tài khoản
, mã của một lớp khác có thể gọi
int backupIdNumber = account. getInternalIdNumber ();
Trường
Tài khoản
lớp
nội bộ
vẫn còn riêng tư, vì vậy mã của một lớp khác không có cách nào để gán một giá trị cho trường
internalIdNumber
của tài khoản. Nếu bạn muốn cho phép các lớp khác thay đổi giá trị
internalIdNumber
cá nhân của tài khoản, bạn có thể thêm một phương thức setter vào mã, như sau:
public void setInternalIdNumber (int internalIdNumber) {
this. internalIdNumber = internalIdNumber;
}
Các phương thức getter và setter không phải là các tính năng được tích hợp sẵn trong Java - chúng chỉ đơn giản là các phương thức Java thông thường. Nhưng mô hình này (có một phương pháp có mục đích là truy cập vào giá trị của trường không thể truy cập được) được sử dụng thường xuyên để lập trình viên sử dụng các điều khoản getter và setter để mô tả nó.
Các phương thức getter và setter là các phương thức accessor. Các lập trình viên Java gần như luôn luôn làm theo quy ước bắt đầu một tên phương pháp accessor với
get
hoặc
đặt
và sau đó viết hoa tên của trường được truy cập.Ví dụ: trường
internalIdNumber
có người truy cập có tên là
getInternalIdNumber
và
setInternalIdNumber
. Trường
renderingValu
điện tử có người truy cập có tên
getRenderingValue
và
setRenderingValue
.
Trước khi bắt đầu, hãy nhập mã này vào trình soạn thảo:
package com. allyourcode. ngân hàng;
public tài khoản lớp {
công cộng Chuỗi khách hàngName;
private int internalIdNumber;
Địa chỉ chuỗi;
Chuỗi điện thoại;
công cộng int socialSecurityNumber;
int accountType;
cân bằng đôi;
public static int findById (int internalIdNumber) {
Tài khoản foundAccount = new Account ();
// Mã để tìm tài khoản ở đây.
trở lại được tìm thấyTài khoản. internalIdNumber;
}
}
Bạn có thể có Android Studio tạo trình getters và setters cho bạn. Dưới đây là cách:
- Bắt đầu bằng mã của bạn trong trình chỉnh sửa trên Android Studio.
- Nhấp vào con trỏ chuột ở bất cứ đâu trong trình soạn thảo.
- Trên trình đơn chính của Android Studio, chọn Mã → Tạo → Trình kết nối và Bộ định thời.
Hộp thoại Chọn lĩnh vực để tạo ra và các bộ định nghĩa xuất hiện.
Ngoài ra, bạn chỉ có thể tạo ra các getter bằng cách chọn Code → Generate → Getter. Và bạn chỉ có thể tạo ra setters bằng cách chọn Code → Generate → Setter.
Hộp thoại liệt kê các trường trong lớp xuất hiện trong trình chỉnh sửa của Android Studio.
- Chọn một hoặc nhiều trường trong hộp danh mục của hộp thoại.
Để tạo mã ở trên, bạn chỉ chọn trường
internalIdNumber
.Ngoài ra, bạn chỉ có thể tạo ra các bộ lọc bằng cách chọn Mã
- Nhấp vào OK.
Android Studio loại bỏ hộp thoại và thêm các phương thức getter và setter đã được ủ gần đây vào mã của trình soạn thảo.