java基礎加強1

來源:互聯網
上載者:User

1、枚舉
*建立枚舉類
public enum Grade {
  A,B,C,D,E;
}
*使用匿名內部類
enum Grade {
  A("100-90"){
 public String  toLocalString(){  return "優";  }
  }

*私人構造方法
A("100-90")
private String value; 
  private Grade(String value){
 System.out.println("value "+value);
        this.value=value;
  } 
  public String getValue(){return value;}

2、遍曆
*普通的方式遍曆
for(int i=0;i<list.size();i++)
*普通的方式遍曆,使用迭代器
Iterator<String> it=list.iterator();
while(it.hasNext())
*使用增強for迴圈  使用泛型
for(String str:list)
*使用增強for迴圈 ,沒有使用泛型
for(Object str:list)
*使用增強for迴圈 ,數組中存放時javaBean
for(Person person:persons)

3、可變參數
public static Integer sum(Integer ... arrs)

4、反射
*調用某個類的 class 屬性 (無須調用方法, 效能更好)
Class clazz=Person.class;
*調用某個對象的 getClass() 方法
Person person=new Person();
Class clazz=person.getClass();
*使用 Class 的 forName(className) 靜態方法
Class clazz=Class.forName("cn.itcast.reflect.Person");
*調用方法
Class[] parameterTypes={java.lang.String[].class};
Method method=clazz.getMethod("main", parameterTypes);
String[] args={"aa","bb"};
method.invoke(person, new Object[]{args});
*擷取欄位
Field field=clazz.getDeclaredField("grade");
*擷取欄位的值
field.get(person)
*設定欄位的值
field.set(person, "N");
* 擷取對象
Object obj=clazz.newInstance();
Person person=(Person)obj;
*擷取構造方法
Class[] parameterTypes={java.lang.String.class,java.lang.Integer.class};
Constructor constructor=clazz.getConstructor(parameterTypes);

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.