Giới thiệu AbstractSet class trong Java

AbstractSet class là một phần của Java Collection Framework, nó implement Collection interface và extends AbstractCollection class. AbstractSet implement Set interface cung cấp một khung sườn chung cho các Set implementation như HashSet, TreeSet, etc. 

Sở đồ hướng đối tượng

java.lang.Object
 ↳ java.util.AbstractCollection<E>
    ↳ Class AbstractSet<E>

Cú pháp khai báo

public abstract class AbstractSet<E>
  extends AbstractCollection<E>
     implements Set<E>

Where E is the type of elements maintained by this Set.

Constructor: protected AbstractSet() – Protected constructor mặc định, chúng ta không được phép khởi tạo 1 đối tượng từ AbstractSet mà phải thông qua các subclass của nó.

import java.util.*;
 
public class GFG1 {
    public static void main(String[] args) throws Exception
    {
 
        try {
 
            // Creating object of AbstractSet<Integer>
            AbstractSet<Integer>
                abs_set = new TreeSet<Integer>();
 
            // Populating abs_set
            abs_set.add(1);
            abs_set.add(2);
            abs_set.add(3);
            abs_set.add(4);
            abs_set.add(5);
 
            // print abs_set
            System.out.println("AbstractSet: "
                               + abs_set);
        }
        catch (Exception e) {
            System.out.println(e);
        }
    }
}
AbstractSet: [1, 2, 3, 4, 5]

Ví dụ 2: một số thao tác cơ bản với AbstractSet.

import java.util.*;
 
public class GFG1 {
   
    public static void main(String[] args) throws Exception
    {
 
        try {
 
            // Creating object of AbstractSet<Integer>
            AbstractSet<Integer> abs_set = new TreeSet<Integer>();
 
            // Populating abs_set
            abs_set.add(1);
            abs_set.add(2);
            abs_set.add(3);
            abs_set.add(4);
            abs_set.add(5);
 
            // print abs_set
            System.out.println("AbstractSet before "
                               + "removeAll() operation : "
                               + abs_set);
 
            // Creating another object of ArrayList<Integer>
            Collection<Integer> arrlist2 = new ArrayList<Integer>();
            arrlist2.add(1);
            arrlist2.add(2);
            arrlist2.add(3);
 
            // print arrlist2
            System.out.println("Collection Elements"
                               + " to be removed : "
                               + arrlist2);
 
            // Removing elements from AbstractSet
            // specified in arrlist2
            // using removeAll() method
            abs_set.removeAll(arrlist2);
 
            // print arrlist1
            System.out.println("AbstractSet after "
                               + "removeAll() operation : "
                               + abs_set);
        }
 
        catch (NullPointerException e) {
            System.out.println("Exception thrown : " + e);
        }
    }
}

Output

AbstractSet before removeAll() operation : [1, 2, 3, 4, 5]
Collection Elements to be removed : [1, 2, 3]
AbstractSet after removeAll() operation : [4, 5]

Tóm lược

Như vậy là chúng ta đã tìm hiểu được AbstractSet class được dùng để tạo khung sườn chung cho các Set implememtation như HashSet, TreeSet, một trong những collection được sử dụng phổ biến trong Java.

Nguồn tham khảo

https://www.geeksforgeeks.org/abstractset-class-in-java-with-examples/

0 0 vote
Article Rating
Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x