日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

20155222 2016-2017-2 《Java程序设计》第8周学习总结

發布時間:2023/12/19 java 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 20155222 2016-2017-2 《Java程序设计》第8周学习总结 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

20155222 2016-2017-2 《Java程序設計》第8周學習總結

教材學習內容總結

  • Java NIO(New IO)是一個可以替代標準Java IO API的IO API(從Java 1.4開始),Java NIO提供了與標準IO不同的IO工作方式。
    Java NIO: Channels and Buffers(通道和緩沖區)
    標準的IO基于字節流和字符流進行操作的,而NIO是基于通道(Channel)和緩沖區(Buffer)進行操作,數據總是從通道讀取到緩沖區中,或者從緩沖區寫入到通道中。

  • JDK 1.4中引入的日志API,能夠捕獲很多錯誤信息,比如:設置錯誤、性能瓶頸、安全破壞、程序或平臺小問題等。這些API提供的日志非常適用于各種不同使用者的分析,包括:外出服務工程師,軟件開發人員,參與客戶管理和維護的系統管理員。

教材學習中的問題和解決過程

  • IO與NIO有何區別?
    面向流與面向緩沖
    Java NIO和IO之間第一個最大的區別是,IO是面向流的,NIO是面向緩沖區的。 Java IO面向流意味著每次從流中讀一個或多個字節,直至讀取所有字節,它們沒有被緩存在任何地方。此外,它不能前后移動流中的數據。如果需要前后移動從流中讀取的數據,需要先將它緩存到一個緩沖區。 Java NIO的緩沖導向方法略有不同。數據讀取到一個它稍后處理的緩沖區,需要時可在緩沖區中前后移動。這就增加了處理過程中的靈活性。但是,還需要檢查是否該緩沖區中包含所有您需要處理的數據。而且,需確保當更多的數據讀入緩沖區時,不要覆蓋緩沖區里尚未處理的數據。
    阻塞與非阻塞IO
    Java IO的各種流是阻塞的。這意味著,當一個線程調用read() 或 write()時,該線程被阻塞,直到有一些數據被讀取,或數據完全寫入。該線程在此期間不能再干任何事情了。 Java NIO的非阻塞模式,使一個線程從某通道發送請求讀取數據,但是它僅能得到目前可用的數據,如果目前沒有數據可用時,就什么都不會獲取。而不是保持線程阻塞,所以直至數據變的可以讀取之前,該線程可以繼續做其他的事情。 非阻塞寫也是如此。一個線程請求寫入一些數據到某通道,但不需要等待它完全寫入,這個線程同時可以去做別的事情。 線程通常將非阻塞IO的空閑時間用于在其它通道上執行IO操作,所以一個單獨的線程現在可以管理多個輸入和輸出通道(channel)。

代碼調試中的問題和解決過程

-如何使用NIO讀取數據。

import java.io.*; import java.nio.*; import java.nio.channels.*; public class Program { static public void main( String args[] ) throws Exception { FileInputStream fin = new FileInputStream("c:\\test.txt"); // 獲取通道 FileChannel fc = fin.getChannel(); // 創建緩沖區 ByteBuffer buffer = ByteBuffer.allocate(1024); // 讀取數據到緩沖區 fc.read(buffer); buffer.flip(); while (buffer.remaining()>0) { byte b = buffer.get(); System.out.print(((char)b)); } fin.close(); } }

代碼托管

上周考試錯題總結

  • 下面哪些Linux 命令可以ASCII碼和16進制單字節方法輸出Hello.java的內容?

od -tcx1 Hello.java
od -tc -tx1 Hello.java

  • JDK8中定義的通用函數接口,從行為上分為()類型:

Consumer
Function
Predicate
Supplier

  • When applied to instance variables, the ________________ visibility modifier enforces encapsulation(當應用到實例變量時,____可見性修飾符強制執行封裝).:

    private

  • __________________ parameters are the values that are used when calling a method(___參數是調用方法時傳給方法的值).:

    actual(實際參數)

  • What is the output of the following code?(下面代碼的運行結果是?)
    LocalDate date = LocalDate.of(2018, Month.APRIL, 40);
    System.out.println(date.getYear() + " " + date.getMonth()+ " "+ date.getDayOfMonth());

    A runtime exception is thrown.

  • What is the output of the following code?(下面代碼的運行結果是?)
    LocalDate date = LocalDate.of(2018, Month.APRIL, 30);
    date.plusDays(2);
    date.plusYears(3);
    System.out.println(date.getYear() + " "+ date.getMonth() + " "+ date.getDayOfMonth());

    2018 APRIL 30

  • Given the following, which answers can correctly fill in the blank? (Choose all that apply.)針對下面的代碼,()中應填入哪個選項?
    LocalDate date = LocalDate.now();
    LocalTime time = LocalTime.now();
    LocalDateTime dateTime = LocalDateTime.now();
    ZoneId zoneId = ZoneId.systemDefault();
    ZonedDateTime zonedDateTime = ZonedDateTime.of(dateTime, zoneId);
    long epochSeconds = 0;
    Instant instant = ( );

    zonedDateTime.toInstant()

學習進度條

代碼行數(新增/累積)博客量(新增/累積)學習時間(新增/累積)重要成長
目標5000行30篇400小時
第一周9/93/610/10
第二周40/491/75/15
第三周49/991/810/25
第四周202/3011/915/40
第五周170/4711/105/45
第六周115/5201/115/50
第七周18/5381/125/55
第八周28/5451/135/60

嘗試一下記錄「計劃學習時間」和「實際學習時間」,到期末看看能不能改進自己的計劃能力。這個工作學習中很重要,也很有用。
耗時估計的公式
:Y=X+X/N ,Y=X-X/N,訓練次數多了,X、Y就接近了。

參考:軟件工程軟件的估計為什么這么難,軟件工程 估計方法

  • 計劃學習時間:20小時

  • 實際學習時間:5小時

  • 改進情況:

  • 有空多看看現代軟件工程 課件 軟件工程師能力自我評價表

參考資料

  • Java學習筆記(第8版)

  • 《Java學習筆記(第8版)》學習指導
  • ...

轉載于:https://www.cnblogs.com/20155222lzj/p/6720163.html

總結

以上是生活随笔為你收集整理的20155222 2016-2017-2 《Java程序设计》第8周学习总结的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。