1. 程式人生 > >java中Object... 的用法是什麼意思?

java中Object... 的用法是什麼意思?

  1. @SuppressWarnings("unchecked")  
  2.     public List<T> findByConditions(String hql,Object... conditions) throws Exception{  
  3.         Session session = getSessionFactory().getCurrentSession();  
  4.         Query query = session.createQuery(hql);  
  5.         for (int i = 0; i < conditions.length; i++) {  
  6.             query.setParameter(i, conditions[i]);  
  7.         }  
  8.         return query.list();  
  9.     }  

Object是所有類的基類,這個你可以查詢jdk文件瞭解,所有類都繼承自Object。
Object ...objects(稱為可變個數的形參)這種引數定義是在不確定方法引數的情況下的一種多型表現形式。即這個方法可以傳遞多個引數,這個引數的個數是不確定的。這樣你在方法體中需要相應的做些處理。因為Object是基類,所以使用Object ...objects這樣的引數形式,允許一切繼承自Object的物件作為引數。這種方法在實際中應該還是比較少用的。


Object[] obj這樣的形式,就是一個Object陣列構成的引數形式。說明這個方法的引數是固定的,是一個Object陣列,至於這個陣列中儲存的元素,可以是繼承自Object的所有類的物件。

這些基礎東西應該多看幾遍"Think in java"。