Trong bài này, mình sẽ giới thiệu đến các bạn tính chất cơ bản đầu tiên của lập trình đối tượng đó là tính đóng gói trong Java.
Tính đóng gói trong java
Tính đóng gói trong java là kỹ thuật ẩn giấu thông tin và hiển thị ra thông tin liên quan. Mục đích chính của đóng gói trong java là giảm thiểu mức độ phức tạp phát triển phần mềm.
Đóng gói cũng được sử dụng để bảo vệ trạng thái bên trong của một đối tượng. Thông qua các phương thức set,get ta có thể thay đổi các giá trị thuộc tính và lấy giá trị từ chúng. Điều này làm cho chương trình dễ quản lý hơn và có thể kiểm soát dữ liệu tốt hơn.
Ví dụ về tính đóng gói
public class HinhChuNhat { private int rong; // biến intance private int dai; // biến intance public void setRong(int rong){ this.rong = rong; } public void setDai(int dai){ this.dai = dai; } public int getRong(){ return this.rong; } public int getDai(){ return this.dai; } }
Mặc dù các bạn không thể trực tiếp thay đổi giá trị của hai biến rong
và dai
nhưng có thể thông qua phương thức setRong
, setDai
để thay đổi giá trị của chúng. Hoặc thông qua hai phương thức getRong
và getDai
để lấy ra giá trị của chúng.
public class DemoJava { public static void main(String[] args) { HinhChuNhat HCN = new HinhChuNhat(); HCN.setRong(3); HCN.setDai(4); System.out.println("HCN co chieu rong: " + HCN.getRong() ); System.out.println("HCN co chieu dai: " + HCN.getDai() ); } };
Sau khi chạy sẽ có kết quả
HCN co chieu rong: 3 HCN co chieu dai: 4
Phạm vi truy cập
Trong java cung cấp thành phần gọi là phạm vi truy cập của một lớp, một phương thức hay một thuộc tính. Gồm có 4 loại:
- default (mặc định): Nếu như bạn không khai báo phạm vi truy cập thì Java sẽ hiểu mặc định phạm vi truy cập là default. Với default thì trong lớp (class) đó và trong gói (package) đó mới có thể nhìn thấy được.
- private (riêng tư): Nếu như bạn khai báo phạm vi truy cập là private thì chỉ duy nhất trong lớp (class) đó mới có thể nhìn thấy được.
- public (công khai): Nếu như bạn khai báo phạm vi truy cập là public thì mọi thứ từ lớp (class), gói (package), lớp con (subclass) đề có thể nhìn thấy được.
- protected (được bảo vệ): Nếu như bạn khai báo phạm vi truy cập là protected thì lớp (class) đó, gói (package) đó, lớp con (subclass) đó đều có thể nhìn thấy được.
Bài tập: Xây dựng một lớp HocSinh gồm các thuộc tính tên, tuổi, địa chỉ. Các phương thức set get tên,tuổi, địa chỉ của lớp HocSinh.
Bài viết mình đến đây là kết thúc. Cám ơn các bạn đã theo dõi !
Trả lời