亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Java日常練習(xí)題,每天進(jìn)步一點點(5)

 更新時間:2021年07月22日 11:07:01   作者:牛哄哄的柯南  
下面小編就為大家?guī)硪黄狫ava基礎(chǔ)的幾道練習(xí)題(分享)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧,希望可以幫到你

承蒙各位厚愛,我們一起每天進(jìn)步一點點?。ㄊ髽?biāo)選中空白處查看答案)

1、下列關(guān)于Java類中方法的定義,正確的是()

正確答案: D

若代碼執(zhí)行到return語句,則將當(dāng)前值返回,而且繼續(xù)執(zhí)行return語句后面的語句。

只需要對使用基本數(shù)據(jù)類型定義的屬性使用getter和setter,體現(xiàn)類的封裝性。

方法的返回值只能是基本數(shù)據(jù)類型。

在同一個類中定義的方法,允許方法名稱相同而形參列表不同。

題解:
A、一旦執(zhí)行到return,就不再執(zhí)行后續(xù)的代碼。
B、類的封裝性可不是這么體現(xiàn)的,數(shù)據(jù)域和方法都可以被封裝。數(shù)據(jù)域可以是基本數(shù)據(jù)類型也可以是引用類型。
C、方法的返回值可以是引用類型。
D、重載,判定方法只有方法名一致,形參列表不同。

2、Java Application 中的主類需包含main方法,以下哪項是main方法的正確形參?( )

正確答案: B

String args

String[] args

Char arg

StringBuffer[] args

題解:
送分題,main函數(shù)的形式為public static void main(String[] args),所以選B
String[] args / String args[] / String… args都是正確的。

3、下面有關(guān)java的一些細(xì)節(jié)問題,描述錯誤的是?

正確答案: B

構(gòu)造方法不需要同步化

一個子類不可以覆蓋掉父類的同步方法

定義在接口中的方法默認(rèn)是public的

容器保存的是對象的引用

題解:
B選項,synchronized關(guān)鍵字實并不屬于方法簽名的一部分,子類的同名方法可以覆蓋父類的對應(yīng)方法,只不過synchronized修飾符不會被繼承,也就是說子類覆蓋后子類的對應(yīng)方法就不同步了,但是可以調(diào)用的。這個時候調(diào)用父類的對應(yīng)方法還是可以同步的。
接口中的方法默認(rèn)都是public static final

4、以下代碼執(zhí)行后輸出結(jié)果為( )

public class ClassTest{
     String str = new String("hello");
     char[] ch = {'a','b','c'};
     public void fun(String str, char ch[]){
     str="world";
     ch[0]='d';
 }
 public static void main(String[] args) {
     ClassTest test1 = new ClassTest();
     test1.fun(test1.str,test1.ch);
     System.out.print(test1.str + " and ");
     System.out.print(test1.ch);
     }
 }

正確答案: A

hello and dbc

world and abc

hello and abc

world and dbc

題解:
我記得這題以前用圖解釋過,想簡單理解的話,就是String不變,字符會變。
java中都是按棧中的值傳遞,基本數(shù)據(jù)類型棧中的值就是實際存儲的值,引用類型棧中的值就是指向堆中的地址
1)String和char[ ]都是引用類型,所以在方法中傳遞的都是指向真實數(shù)據(jù)的地址
2)假設(shè)String str指向的hello的地址為d1,str傳遞到fun函數(shù)中的也是地址d1,成員變量str和fun的形參str不是同一個變量,把fun型中的str賦值為world只是修改了該str指向的地址,該地址由d1更改成了world的地址,并沒有改變成員變量str指向的地址及堆中的數(shù)據(jù),所以str還是hello。
3)假設(shè)char[ ] ch指向的abc的地址是d2,傳遞到fun函數(shù)中的地址也是d2,同上成員變量ch和fun的形參ch不是同一個變量,(1)如果把fun中的ch[0]='d'更改為ch = new ch[3];ch[0]=‘d',那么成員變量ch的值是沒有變化的,還是abc,原理同上String,只是改變了引用ch指向的堆數(shù)據(jù)的地址,并沒有改變成員變量ch指向的地址以及堆中的數(shù)據(jù)。(2)改變了堆中的數(shù)據(jù),所以最終結(jié)果編程dbc,此ch只是形參而不是成成員變量ch,如果對ch變化對成員變量ch沒有影響,但是ch[i]指向了堆數(shù)據(jù)的地址,直接修改堆數(shù)據(jù),所以成員變量變了。

5、下面哪個Set類是排序的?

正確答案: B

LinkedHashSet

TreeSet

HashSet

AbstractSet

題解:
TreeSet
使用二叉樹的原理對新 add()的對象按照指定的順序排序(升序、降序),每增加一個對象都會進(jìn)行排序,將對象插入的二叉樹指定的位置。

6、下面哪段程序能夠正確的實現(xiàn)了GBK編碼字節(jié)流到UTF-8編碼字節(jié)流的轉(zhuǎn)換:

byte[] src,dst;

正確答案: B

A:dst=String.fromBytes(src,“GBK”).getBytes(“UTF-8”)

B:dst=new String(src,“GBK”).getBytes(“UTF-8”)

C:dst=new String(“GBK”,src).getBytes()

D:dst=String.encode(String.decode(src,“GBK”)),“UTF-8” )

題解:
答案:B
操作步驟就是先解碼再編碼
用new String(src,“GBK”)解碼得到字符串
用getBytes(“UTF-8”)得到UTF8編碼字節(jié)數(shù)組

7、給出下面的代碼段:

public class Base{

int w, x, y ,z;

public Base(int a,int b)

{

x=a; y=b;

}

public Base(int a, int b, int c, int d)

{

// assignment x=a, y=b

w=d;z=c;

}}

在代碼說明// assignment x=a, y=b處寫入如下哪幾個代碼是正確的?()

正確答案: C D

Base(a,b);

x=a, y=b;

x=a; y=b;

this(a,b);

題解:
A錯,調(diào)用Base這個構(gòu)造方法應(yīng)該這樣 new Base(a,b)
B錯,和C相比應(yīng)該是分號不是逗號,帥的一塌糊涂
C正常賦值操作
D調(diào)用本類的構(gòu)造方法

8、下面描述屬于java虛擬機(jī)功能的是?

正確答案: A B C D

通過 ClassLoader 尋找和裝載 class 文件

解釋字節(jié)碼成為指令并執(zhí)行,提供 class 文件的運行環(huán)境

進(jìn)行運行期間垃圾回收

提供與硬件交互的平臺

題解:
D說的是提供平臺,也算對的

9、byte b1=1,b2=2,b3,b6,b8;

final byte b4=4,b5=6,b7;

b3=(b1+b2); //語句1

b6=b4+b5; //語句2

b8=(b1+b4); //語句3

b7=(b2+b5); //語句4

System.out.println(b3+b6);

下列代碼片段中,存在編譯錯誤的語句是()

正確答案: B C D

語句2

語句1

語句3

語句4

題解:
本題答案應(yīng)為:B、C、D
------------知識點------------
Java表達(dá)式轉(zhuǎn)型規(guī)則由低到高轉(zhuǎn)換:
1、所有的byte,short,char型的值將被提升為int型;
2、如果有一個操作數(shù)是long型,計算結(jié)果是long型;
3、如果有一個操作數(shù)是float型,計算結(jié)果是float型;
4、如果有一個操作數(shù)是double型,計算結(jié)果是double型;
5、被fianl修飾的變量不會自動改變類型,當(dāng)2個final修飾相操作時,結(jié)果會根據(jù)左邊變量的類型而轉(zhuǎn)化。
--------------解析--------------
語句1錯誤:b3=(b1+b2);自動轉(zhuǎn)為int,所以正確寫法為b3=(byte)(b1+b2);或者將b3定義為int;
語句2正確:b6=b4+b5;b4、b5為final類型,不會自動提升,所以和的類型視左邊變量類型而定,即b6可以是任意數(shù)值類型;
語句3錯誤:b8=(b1+b4);雖然b4不會自動提升,但b1仍會自動提升,所以結(jié)果需要強轉(zhuǎn),b8=(byte)(b1+b4);
語句4錯誤:b7=(b2+b5); 同上。同時注意b7是final修飾,即只可賦值一次,便不可再改變。

10、下面選項中,哪些是interface中合法方法定義?()

正確答案: A C D

public void main(String [] args);

private int getSum();

boolean setFlag(Boolean [] test);

public float get(int x);

關(guān)于抽象類:
JDK1.8以前:抽象類的方法默認(rèn)訪問權(quán)限為protected
JDK1.8時:抽象類的方法默認(rèn)訪問權(quán)限變?yōu)閐efault
關(guān)于接口:
JDK1.8以前:接口中的方法必須是public的
JDK1.8時:接口中的方法可以是public的,也可以是default的
JDK1.9時:接口中的方法還可以是private的
沒強調(diào)版本,所以這題站在現(xiàn)在的角度看ABCD都對,JDK1.9時接口中的方法可以是private的
A項沒有static修飾符,可以作為普通的方法。
B剛才說了JDK1.9就是對的
C不顯示標(biāo)明方法的訪問修飾符,接口中默認(rèn)是public,沒毛病
D項也正常get也不是關(guān)鍵字可以作為方法名

答案匯總:

1、正確答案: D

2、正確答案: B

3、正確答案: B

4、正確答案: A

5、正確答案: B

6、正確答案: B

7、正確答案: C D

8、正確答案: A B C D

9、正確答案: B C D

10、正確答案: A C D

總結(jié)

本篇文章就到這里了,希望能給你帶來幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!

相關(guān)文章

  • Java8 CompletableFuture詳解

    Java8 CompletableFuture詳解

    這篇文章主要介紹了Java8 CompletableFuture詳解,CompletableFuture extends Future提供了方法,一元操作符和促進(jìn)異步性以及事件驅(qū)動編程模型,需要的朋友可以參考下
    2014-06-06
  • idea中使用SonarLint進(jìn)行代碼規(guī)范檢測及使用方法

    idea中使用SonarLint進(jìn)行代碼規(guī)范檢測及使用方法

    這篇文章主要介紹了idea中使用SonarLint進(jìn)行代碼規(guī)范檢測,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-08-08
  • SpringBoot服務(wù)上實現(xiàn)接口限流的方法

    SpringBoot服務(wù)上實現(xiàn)接口限流的方法

    這篇文章主要介紹了SpringBoot服務(wù)上實現(xiàn)接口限流的方法,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-10-10
  • 如何解決Spring事務(wù)注解@Transactional在類內(nèi)部方法調(diào)用不生效

    如何解決Spring事務(wù)注解@Transactional在類內(nèi)部方法調(diào)用不生效

    這篇文章主要介紹了如何解決Spring事務(wù)注解@Transactional在類內(nèi)部方法調(diào)用不生效問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-08-08
  • Java Long類型對比分析

    Java Long類型對比分析

    這篇文章主要介紹了Java Long類型對比分析,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-07-07
  • java中Scanner.next()和Scanner.nextLine的區(qū)別圖文詳解

    java中Scanner.next()和Scanner.nextLine的區(qū)別圖文詳解

    使用java語言編程,最常用的輸入就是使用Scanner了,它的構(gòu)造很簡單,這篇文章主要給大家介紹了關(guān)于java中Scanner.next()和Scanner.nextLine區(qū)別的相關(guān)資料,需要的朋友可以參考下
    2024-02-02
  • Maven jar包沖突的解決方案

    Maven jar包沖突的解決方案

    這篇文章主要介紹了Maven jar包沖突的解決方案,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-04-04
  • Java NIO ByteBuffer讀取文件方式

    Java NIO ByteBuffer讀取文件方式

    這篇文章主要介紹了Java NIO ByteBuffer讀取文件方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-08-08
  • 基于Java實現(xiàn)文件和base64字符串轉(zhuǎn)換

    基于Java實現(xiàn)文件和base64字符串轉(zhuǎn)換

    這篇文章主要介紹了基于Java實現(xiàn)文件和base64字符串轉(zhuǎn)換,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-01-01
  • spring框架集成flyway項目的詳細(xì)過程

    spring框架集成flyway項目的詳細(xì)過程

    今天通過本文給大家分享spring框架集成flyway項目的詳細(xì)過程,由于大多數(shù)都是springboot集成flyway,很少見到spring框架的項目,今天就抽空給大家介紹下spring框架集成flyway項目的方法,一起看看吧
    2021-07-07

最新評論