麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學院 > 開發設計 > 正文

Java中的Vector

2019-11-18 13:22:15
字體:
來源:轉載
供稿:網友

  Vector的用法很簡單,這已在前面的例子中得到了證實。盡管我們大多數時候只需用addElement()插入對象,用elementAt()一次提取一個對象,并用elements()獲得對序列的一個“枚舉”。但仍有其他一系列方法是非常有用的。同我們對于java庫慣常的做法一樣,在這里并不使用或講述所有這些方法。但請務必閱讀相應的電子文檔,對它們的工作有一個大概的熟悉。
  
  1. 崩潰Java
  
  Java標準集合里包含了toString()方法,所以它們能生成自己的String表達方式,包括它們容納的對象。例如在Vector中,toString()會在Vector的各個元素中步進和遍歷,并為每個元素調用toString()。假定我們現在想打印出自己類的地址。看起來似乎簡單地引用this即可(非凡是C++程序員有這樣做的傾向):
  
  //: CrashJava.java
  // One way to crash Java
  import java.util.*;
  
  public class CrashJava {
   public String toString() {
    return "CrashJava address: " + this + "/n";
   }
   public static void main(String[] args) {
    Vector v = new Vector();
    for(int i = 0; i < 10; i++)
     v.addElement(new CrashJava());
    System.out.PRintln(v);
   }
  } ///:~
  
  若只是簡單地創建一個CrashJava對象,并將其打印出來,就會得到無窮無盡的一系列違例錯誤。然而,假如將CrashJava對象置入一個Vector,并象這里演示的那樣打印Vector,就不會出現什么錯誤提示,甚至連一個違例都不會出現。此時Java只是簡單地崩潰(但至少它沒有崩潰我的操作系統)。這已在Java 1.1中測試通過。
  此時發生的是字串的自動類型轉換。當我們使用下述語句時:
  "CrashJava address: " + this
  編譯器就在一個字串后面發現了一個“+”以及好象并非字串的其他東西,所以它會試圖將this轉換成一個字串。轉換時調用的是toString(),后者會產生一個遞歸調用。若在一個Vector內出現這種事情,看起來堆棧就會溢出,同時違例控制機制根本沒有機會作出響應。
  若確實想在這種情況下打印出對象的地址,解決方案就是調用Object的toString方法。此時就不必加入this,只需使用super.toString()。當然,采取這種做法也有一個前提:我們必須從Object直接繼續,或者沒有一個父類覆蓋了toString方法。

上一篇:Java中的BitSet

下一篇:Java中的排序

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: h视频在线观看免费 | 毛片小网站| 久久精品视频亚洲 | 国产1区2区3区中文字幕 | 国产乱淫a∨片免费观看 | 久久国产精品久久久久久电车 | 国产91对白叫床清晰播放 | 男女一边摸一边做羞羞视频免费 | 久久久久久久一区二区三区 | 色999中文字幕 | 午夜色视频在线观看 | 91精品动漫在线观看 | 成人毛片100部 | 美女视频网站黄色 | 国产精品成人一区二区三区电影毛片 | 视频一区二区三区免费观看 | 午夜精品影院 | 19禁国产精品福利视频 | 色综合久久久久久 | 久久精品中文字幕一区二区 | 国产亚洲精品美女久久久 | 99精品视频一区二区 | 国产精品视频一区二区三区四 | 色网免费观看 | 成熟女人特级毛片www免费 | 亚州综合一区 | 国产一区二区三区视频观看 | 免费观看视频在线 | 九九热在线免费观看视频 | 免费黄色欧美视频 | 欧美成人一区二区三区 | 欧美激情猛片xxxⅹ大3 | 成人视屏在线观看 | 成人午夜视频在线观看 | 国产做爰全免费的视频黑人 | 视频一区二区三区在线播放 | 99国产精品国产免费观看 | 一级黄色毛片播放 | 久久综合狠狠综合久久 | 黄色av片在线观看 | 欧美一级在线免费 |