Java學習筆記(7)

File類用於處理文件和目錄java

isDirectory()用於檢查當前對象是否目錄,isFile()用於檢查當前對象是否文件windows

構造File對象時,傳入的路徑不必定要求存在,要經過exists()方法判斷是否存在網絡

使用Scanner類從文件中讀取文本數據,使用PrintWriter類向文件中寫入文本數據函數

若是文件不存在,PrintWriter將建立一個新的文件;若是文件已存在,文件中的原有內容將被擦除。print(),println(),printf()三個方法向文件中寫數據,最後不要忘記調用close()方法關閉文件url

另外還能夠經過try-with-resources的語法,自動釋放資源spa

try(java.io.PrintWriter writer=new java.io.PrintWriter(file)){
  //文件寫入操做  
}

括號裏聲明的資源,在try代碼塊運行結束後,會自動釋放,括號裏可能同時聲明多個資源。資源對象必須是AutoCloseable的子類。資源必須在一條語句中聲明並建立完畢code

 

使用Scanner讀取文件,要調用下面這個構造函數orm

Scanner input = new Scanner(new File(fileName));

Scanner(string)用於直接從string變量中讀取數據。對象

換行符在windows下是\r\n, 在UNIX系統下是\n, 能夠經過以下語句獲取當前系統的換行符blog

String lineSeparator = System.getProperty("line.separator");

判斷是否已讀到文件結尾處,用Scanner.hasNext();

經過傳遞Url給Scanner, 能夠讀取網絡資源

 1         System.out.println("Enter a URL: ");
 2         String URLString = new Scanner(System.in).next();
 3 
 4         try {
 5             URL url = new URL(URLString);
 6             int count = 0;
 7             Scanner input = new Scanner(url.openStream());
 8             while (input.hasNext()) {
 9                 String line = input.nextLine();
10                 count += ((String) line).length();
11             }
12 
13             System.out.println("The file size is " + count + " characters");
14         } catch (MalformedURLException e) {
15             System.out.println("Invalid URL");
16         } catch (IOException e) {
17             System.out.println("I/O errors: no such file");
18         }

 

抽象方法只有定義,沒有實現,須要在子類中實現;含有抽象方法的類,必須定義爲抽象類;抽象類不能實例化。

子類要實現父類的全部抽象方法,不然子類也要定義成抽象類,抽象方法都是非靜態方法

抽象類不能經過new操做進行實例化,但你仍然能夠定義構造器,以在子類中被調用

含有抽象方法的類必須是抽象類,抽象類不必定要包含抽象方法

子類中能夠重寫父類中的方法,並把它定義爲抽象方法(不經常使用)

即便父類是實在類(concrete),子類也能夠定義成抽象(全部類的基類都是Object, Object是實在類)

雖然不能經過new建立抽象類的實例,可是抽象類能夠做爲一個類型使用

相關文章
相關標籤/搜索