Lớp Properties trong Java




Lớp Properties trong Java là lớp phụ của lớp Hashtable. Nó được sử dụng để duy trì các danh sách của các value trong đó key là một String và value cũng là một String.

Lớp Properties được sử dụng bởi nhiều lớp Java khác. Ví dụ, nó là kiểu đối tượng được trả về bởi System.getProperties() khi đạt được các value môi trường.

Để hiểu sâu hơn các khái niệm được trình bày trong chương này, mời bạn tham khảo loạt bài: Ví dụ về Cấu trúc dữ liệu (Data Structure) trong Java.

Properties định nghĩa các biến instance sau. Biến này giữ một property list mặc định mà liên kết với một đối tượng Properties trong Java.

Properties defaults;

Properties định nghĩa hai constructor. Phiên bản đầu tiên tạo một đối tượng Properties mà không có giá trị mặc định:

Properties( )

Form thứ hai tạo một đối tượng mà sử dụng propDefault cho các value mặc định của nó. Trong cả hai trường hợp, property list đều là trống.

Properties(Properties propDefault)

Ngoài những phương thức được định nghĩa bởi Hashtable, lớp Properties trong Java định nghĩa các phương thức sau:

STT Phương thức và Miêu tả
1 String getProperty(String key)

Trả về value mà liên kết với key. Một đối tượng null được trả về nếu key hoặc không có trong danh sách hoặc không có trong property list mặc định

2 String getProperty(String key, String defaultProperty)

Trả về value mà liên kết với key. defaultPropperty được trả về nếu key hoặc không có trong danh sách hoặc không có trong property list mặc định

3 void list(PrintStream streamOut)

Gửi property list tới output stream mà liên kết tới streamOut

4 void list(PrintWriter streamOut)

Gửi property list tới output stream mà liên kết tới streamOut

5 void load(InputStream streamIn) throws IOException

Nhập một property list từ input stream mà liên kết tới streamIn

6 Enumeration propertyNames( )

Trả về một bản liệt kê các key. Nó cũng bao gồm các key được tìm thấy trong property list mặc định

7 Object setProperty(String key, String value)

Liên kết value với key. Trả về value trước mà liên kết với key, hoặc trả về null nếu không có liên kết nào tồn tại

8 void store(OutputStream streamOut, String description)

Sau khi ghi chuỗi được xác định bởi description, property list được ghi tới output stream mà liên kết tới streamOut

Ví dụ

Chương trình sau minh họa một số phương thức được hỗ trợ bởi lớp Properties trong Java:

import java.util.*;

public class PropDemo {

   public static void main(String args[]) {
      Properties capitals = new Properties();
      Set states;
      String str;
      
      capitals.put("Illinois", "Springfield");
      capitals.put("Missouri", "Jefferson City");
      capitals.put("Washington", "Olympia");
      capitals.put("California", "Sacramento");
      capitals.put("Indiana", "Indianapolis");

      // Hien thi tat ca cac state va capital trong hashtable.
      states = capitals.keySet(); // lay set-view cua cac key
      Iterator itr = states.iterator();
      while(itr.hasNext()) {
         str = (String) itr.next();
         System.out.println("Thu phu cua " +
            str + " la " + capitals.getProperty(str) + ".");
      }
      System.out.println();

      // tim kiem state khong co trong list -- xac dinh mac dinh
      str = capitals.getProperty("Florida", "Not Found");
      System.out.println("Thu phu cua Florida la "
          + str + ".");
   }
}

Nó sẽ cho kết quả sau:

Thu phu cua Missouri la Jefferson City.
Thu phu cua Illinois la Springfield.
Thu phu cua Indiana la Indianapolis.
Thu phu cua California la Sacramento.
Thu phu cua Washington la Olympia.

Thu phu cua Florida la Not Found.

Mọi người cho thể tham gia khóa học thứ 3 của vietjackteam vào đầu tháng 07/2017 do anh Nguyễn Thanh Tuyền, admin vietjack.com trực tiếp giảng dạy tại Hà Nội. Chi tiết nội dung khóa học tham khỏa link : Khóa học Java.Các bạn học CNTT, điện tử viễn thông, đa phương tiện, điện-điện tử, toán tin có thể theo học khóa này. Khóa học cũng đưa 200 câu hỏi phỏng vấn java trên https://www.javatpoint.com/corejava-interview-questions vào nội dung để giúp các bạn dễ dàng vượt qua kì phỏng vấn

Các bạn ở xa học không có điều kiện thời gian có thể tham dự khóa Java online để chủ động cho việc học tập. Thông tin khóa học tại Khóa học Java Online trên Udemy

Mọi người có thể xem demo nội dung khóa học tại địa chỉ Video demo khóa học Offline

Loạt bài hướng dẫn của chúng tôi dựa một phần trên nguồn tài liệu của: Tutorialspoint.com

Follow fanpage của team https://www.facebook.com/vietjackteam/ hoặc facebook cá nhân Nguyễn Thanh Tuyền https://www.facebook.com/tuyen.vietjack để tiếp tục theo dõi các loạt bài mới nhất về Java,C,C++,Javascript,HTML,Python,Database,Mobile.... mới nhất của chúng tôi.


cau_truc_du_lieu_trong_java.jsp

Demo một bài giảng trong khóa học online tại vietjackteam.