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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > java >内容正文

java

Java 第三周总结

發(fā)布時間:2025/4/9 java 20 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Java 第三周总结 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

1.本周學(xué)習(xí)總結(jié)

2.書面作業(yè)

1.代碼閱讀

public class Test1 { private int i = 1;//這行不能修改 private static int j = 2;public static void main(String[] args) {geti();Test1.getj();}public static void geti() {Test1 test=new Test1();System.out.println(test.i);}public static void getj() {System.out.println(j);}}

以上代碼可否編譯通過?哪里會出錯?為什么?嘗試改正?如果創(chuàng)建3個Test1對象,有內(nèi)存中有幾個i,幾個j?

  • 編譯無法通過,i會報錯,它不是一個靜態(tài)的對象。第二行不能更改,所以增加Test1 test=new Test1();
  • 創(chuàng)建了三個Test1對象,內(nèi)存中有三個i,一個j。因為靜態(tài)對象的每個類就只有一個存儲空間,三個j都是同一個。但是i不是靜態(tài)對象,所以每次都會創(chuàng)建新的i,所以有三個。

2.構(gòu)造函數(shù)有什么用?其編寫格式是什么?如果一個類不寫構(gòu)造函數(shù),它有構(gòu)造函數(shù)嗎?如果一個類中只有帶參的構(gòu)造函數(shù),它有沒有不帶參數(shù)的默認(rèn)構(gòu)造函數(shù)?

  • 構(gòu)造函數(shù)最大的好處是方便,能夠便捷的快速調(diào)用編寫好的一些程序,規(guī)則,同時也能區(qū)不同類型,用途的不同代碼。
  • 編寫格式 public(或者private)類名(有無參數(shù)都行){}構(gòu)造函數(shù)不寫返回類型。
  • 沒有。如果一個類,沒有定義構(gòu)造函數(shù),那么系統(tǒng)就會默認(rèn)有一個無參的構(gòu)造函數(shù)。但是如果定義了一個有參函數(shù),為了保證正確性,系統(tǒng)不會創(chuàng)建無參構(gòu)造函數(shù)。這時候如果還想允許無參構(gòu)造,就必須顯式的聲明一個。

3.使用java.lang.Math類的函數(shù)時,為什么不需要new?如果new Math()會產(chǎn)生什么錯誤?

  • Math()是外部類,Math()類里面的方法是靜態(tài)的。所以直接使用類訪問就可以了。
  • 如果new Math(),那么也找不到math下面的其他方法。

4.什么是重載?什么是構(gòu)造函數(shù)重載?在java.lang.Math類中舉出函數(shù)重載的例子?怎么才能區(qū)分兩個重載函數(shù)?

  • 重載,簡單來說就是函數(shù)活著方法有相同的名稱,但是參數(shù)列表不相同的情況。可使函數(shù)、運算符等處理不同類型數(shù)據(jù)或接受不同個數(shù)的參數(shù)。
  • 函數(shù)名可以相同,但是特征標(biāo)必須不同。用函數(shù)名來確定函數(shù)的不同,用特征標(biāo)來確定重載函數(shù)的不同。同時,參數(shù)的順序,類型不同也可以確定重載函數(shù)的不同。

5.final修飾的變量不能改變,為什么如下代碼可以正常運行?

final int[] NUMBS= {1,2,3,4,5}; NUMBS[2] = 1;
  • 對于一個final變量,如果是基本數(shù)據(jù)類型的變量,則其數(shù)值一旦在初始化之后便不能更改;如果是引用類型的變量,則在對其初始化之后便不能再讓其指向另一個對象。這里引用的是int型的變量,但是他的內(nèi)容還是可以改變的,所以代碼可以正常運行。輸出NUMBS[2]的答案為1;

6.閱讀代碼EmployeeTest.java,回答:

(1)為什么其屬性均為private?這樣設(shè)計有什么好處?

  • 私有的,只能對自己使用,對別的類是不能訪問的,也就是說對于別的類來說是隱藏不可見的。如果所有方法都public,萬一被調(diào)用了本來應(yīng)該封裝的方法,那么很容易造成整個相關(guān)程序的修改。危害很大。

(2)為Employee類增加一個無參構(gòu)造函數(shù),調(diào)用其有參構(gòu)造函數(shù),設(shè)置name為雇員1, salary為3000, hireDay的年月日為2017年3月5日。

public Employee(){this("雇員1",3000.0,2015,3,5);}

(3)為Employee類再增加一個有參構(gòu)造函數(shù),參數(shù)只有name與salary,hideDay為當(dāng)前日期。

public Employee(String n, double s, LocalDate hireDay){name = n;salary = s;hireDay = LocalDate.now();}

7.編寫函數(shù)public static boolean isMondayToFriday()

功能:判斷今天如果是周一到周五,直接輸出如“上班時間”并返回true,否則輸出“休息時間”。

public static boolean isMondayToFriday(){LocalDateTime now = LocalDateTime.now();DayOfWeek dayOfWeek = now.getDayOfWeek();System.out.println(dayOfWeek);if(dayOfWeek!=DayOfWeek.SATURDAY && dayOfWeek!=DayOfWeek.SUNDAY)return true;return false;}if(isMondayToFriday())System.out.println("上班時間");elseSystem.out.println("休息時間");

提示:使用LocalDateTime, DayOfWeek

參考資料:
JAVA 8:健壯、易用的時間-日期API - ImportNew.pdf
Java8DateTimeTest.java

3.碼云

4. PTA實驗總結(jié)

  • 初始化塊的修飾符只能是static,使用static修飾的初始化塊被稱為靜態(tài)初始化。初始化塊里的代碼可以包含任何可執(zhí)行性語句,包括定義局部變量 ,調(diào)用其他對象的方法,以及使用分支,循環(huán)語句等。{}單純被一個大括號括起來的叫初始化塊,static{}叫做靜態(tài)初始化。
  • 靜態(tài)初始化的等級是最高的,會最優(yōu)先執(zhí)行
  • Shift+Alt+S,Generate toString()自動補全toString;Generate Getter and Setters,自動添加。
  • Private ,編程語句在模塊級別中使用,用于聲明私有變量及分配存儲空間。使用private修飾符可以完全隱藏類的成員,使得不能從類外直接訪問它們。相對的,使用public修飾符允許任何類訪問類的成員。
  • 在main函數(shù)里調(diào)用新建的類中定義的函數(shù),必須先new一個對象,然后對這個對象進行操作。
  • 這次的實驗感覺不會太難,而且數(shù)量也比較適中,感覺這樣挺好的。。。

轉(zhuǎn)載于:https://www.cnblogs.com/ycll/p/6529410.html

總結(jié)

以上是生活随笔為你收集整理的Java 第三周总结的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。