欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java類(lèi)和對(duì)象習(xí)題及詳細(xì)答案解析

 更新時(shí)間:2025年02月24日 09:35:18   作者:鄭州吳彥祖772  
這篇文章主要介紹了Java類(lèi)和對(duì)象的相關(guān)知識(shí),包括局部變量初始化、靜態(tài)方法、靜態(tài)導(dǎo)入、構(gòu)造方法、代碼塊執(zhí)行順序、toString方法重寫(xiě)、類(lèi)變量和靜態(tài)成員變量的訪問(wèn)等,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下

廢話不多說(shuō),例題:

習(xí)題一:

局部變量必須初始化:編譯不能通過(guò)

習(xí)題二:

首先hello方法是一個(gè)靜態(tài)成員方法(類(lèi)方法)(不依賴(lài)于對(duì)象):

并且在main方法里面本來(lái)就可以直接調(diào)用,但要你非要初始化也沒(méi)關(guān)系,就算是沒(méi)初始化成功也沒(méi)關(guān)系,畢竟靜態(tài)方法不依賴(lài)于成員變量

你用引用調(diào)用(test.hello)合法但是不合理(最后你還是編譯通過(guò)了)

但是如果hello沒(méi)有用static修飾可就錯(cuò)了,畢竟你沒(méi)有實(shí)例化一個(gè)對(duì)象出來(lái)

習(xí)題三:

.import static 能夠?qū)胍恍╈o態(tài)方法

import static java . lang . Math . * ;
public class Test {
public static void main ( String [] args ) {
double x = 30 ;
double y = 40 ;
// 靜態(tài)導(dǎo)入的方式寫(xiě)起來(lái)更方便一些 .
// double result = Math.sqrt(Math.pow(x, 2) + Math.pow(y, 2)) ;這樣很爽,但是這樣的代碼要少寫(xiě)
double result = sqrt ( pow ( x , 2 ) + pow ( y , 2 ));
System . out . println ( result );
}
}

習(xí)題四:

以下代碼在編譯和運(yùn)行過(guò)程中會(huì)出現(xiàn)什么情況?

會(huì)先執(zhí)行構(gòu)造方法,將88的值,賦值給count,所以最終輸出的值是88.

public class TestDemo{
	private int count;
	public static void main(String[] args) {
		TestDemo test=new TestDemo(88);
		System.out.println(test.count);
	}
	 TestDemo(int a) {
		 count=a;
	}
}

習(xí)題五:

cnt的值?

答:5

public class Test{
    static int cnt = 6;
    static{
        cnt += 9;
    }
    public static void main(String[] args){
        System.out.println("cnt = " + cnt);
    }
    static{
        cnt /=3;
    };
}

本題考察的是代碼塊的執(zhí)行順序。帶代碼中存在代碼塊和構(gòu)造方法的時(shí)候。執(zhí)行順序?yàn)椋?/p>

1.靜態(tài)代碼塊

2.實(shí)例代碼塊

3.調(diào)用的對(duì)應(yīng)的構(gòu)造方法

第2種情況:當(dāng)存在相同類(lèi)型的代碼塊和成員變量的時(shí)候,需要看定義順序執(zhí)行。

習(xí)題六:

結(jié)果?

aaabbb

class Test{	
	public String toString() {
		System.out.print("aaa");
		return "bbb";
	}
}

public static void main(String[] args) {
    Test test = new Test();
	System.out.println(test);
}

在執(zhí)行println函數(shù)的時(shí)候,會(huì)調(diào)用Object類(lèi)的toString方法,此時(shí)當(dāng)我們自己類(lèi)重新通過(guò)編譯器實(shí)現(xiàn)了toString方法之后,會(huì)調(diào)用我們自己寫(xiě)的方法。

我們自己寫(xiě)的是返回“bbb”,先打印aaa,然后返回打印“bbb”

習(xí)題七:

結(jié)果?

答:102

 public class HasStatic {// 1
	private static int x = 100;// 2
	public static void main(String args[]) {// 3
		HasStatic hsl = new HasStatic();// 4
		hsl.x++;// 5
		HasStatic hs2 = new HasStatic();// 6
		hs2.x++;// 7
		hsl = new HasStatic();// 8
		hsl.x++;// 9
		HasStatic.x--;// 10
		System.out.println(" x=" + x);// 11
	}
}

1.X是類(lèi)變量,只有一份,所以說(shuō)我們每次調(diào)用都會(huì)改變X的值,所有對(duì)x的操作針對(duì)的都是同一份。

2.靜態(tài)成員變量的訪問(wèn)需要通過(guò)類(lèi)名訪問(wèn),這是正確的訪問(wèn)方式。本題中雖然使用了對(duì)象引用訪問(wèn),但是不會(huì)報(bào)錯(cuò),我們不建議這樣訪問(wèn),但不是錯(cuò)誤,所以,不會(huì)編譯報(bào)錯(cuò)

那大家看看這個(gè)代碼結(jié)果是什么?

class Test1 {
    public int count;
    public Test1(int a){
        this.count = a;
    }
    public Test1(){
    }
}
 public class Test {
     public static void main(String[] args) {
         Test1 test = new Test1(88);
         System.out.println(test.count);

         Test1 test1 = new Test1(77);
         System.out.println(test1.count);

         Test1 test2 = new Test1();
         System.out.println(test2.count);
     }
}

結(jié)果:

習(xí)題八:

編譯運(yùn)行的結(jié)果?

public class Pvf{
    static boolean Paddy;
    public static void main(String args[]){
        System.out.println(Paddy);
    }
}

Passy類(lèi)變量也是成員變量的默認(rèn)賦值規(guī)則:

在Java當(dāng)中,成員變量沒(méi)有賦初值的時(shí)候,會(huì)有默認(rèn)的初始值。基本類(lèi)型是對(duì)應(yīng)的0值。如:int是0,boolean是false,char類(lèi)型是'\u0000',引用類(lèi)型是null,如String。

習(xí)題九:

下述代碼運(yùn)行的結(jié)果是什么?

public class Test { 
    public int aMethod(){
        static int i = 0;
        i++; 
        return i;
    } 
public static void main(String args[]){
    Test test = new Test(); 
    test.aMethod(); 
    int j = test.aMethod();
    System.out.println(j);
    } 
}

Java里面局部變量不能被static修飾?。?!

在一個(gè)類(lèi)中,在方法當(dāng)中定義的變量是局部變量,而靜態(tài)的變量屬于類(lèi)變量。隨著類(lèi)的加載而被創(chuàng)建,而局部變量是調(diào)用該方法的時(shí)候才創(chuàng)建的。

所以,此時(shí)兩種變量的性質(zhì)是沖突的。程序會(huì)報(bào)編譯時(shí)異常

總結(jié) 

到此這篇關(guān)于Java類(lèi)和對(duì)象習(xí)題及詳細(xì)答案解析的文章就介紹到這了,更多相關(guān)Java類(lèi)和對(duì)象習(xí)題內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 關(guān)于HashMap源碼解讀

    關(guān)于HashMap源碼解讀

    HashMap是基于哈希表的Map接口實(shí)現(xiàn),主要用于存儲(chǔ)鍵值對(duì),它通過(guò)數(shù)組、鏈表和紅黑樹(shù)來(lái)實(shí)現(xiàn),解決了哈希沖突問(wèn)題,Java?8中,HashMap對(duì)數(shù)據(jù)結(jié)構(gòu)進(jìn)行了優(yōu)化,引入紅黑樹(shù)來(lái)提高查找效率,此外,HashMap是非線程安全的,適用于單線程環(huán)境
    2024-09-09
  • 三分鐘帶你掌握J(rèn)ava開(kāi)發(fā)圖片驗(yàn)證碼功能方法

    三分鐘帶你掌握J(rèn)ava開(kāi)發(fā)圖片驗(yàn)證碼功能方法

    這篇文章主要來(lái)為大家詳細(xì)介紹Java實(shí)現(xiàn)開(kāi)發(fā)圖片驗(yàn)證碼的具體方法,文中的示例代碼講解詳細(xì),具有一定的借鑒價(jià)值,需要的可以參考一下
    2023-02-02
  • 解決springboot中mongodb不啟動(dòng)及Dao不能被掃描到的問(wèn)題

    解決springboot中mongodb不啟動(dòng)及Dao不能被掃描到的問(wèn)題

    這篇文章主要介紹了解決springboot中mongodb不啟動(dòng)及Dao不能被掃描到的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-05-05
  • springboot+VUE前后端分離實(shí)現(xiàn)疫情防疫平臺(tái)JAVA

    springboot+VUE前后端分離實(shí)現(xiàn)疫情防疫平臺(tái)JAVA

    本文主要使用了Java、springmvc、VUE、node.js、mybatis、mysql、tomcat、jquery、layui、bootstarp、JavaScript、html、css、jsp、log4j等一些常見(jiàn)的基本技術(shù),實(shí)現(xiàn)一個(gè)疫情防疫小平臺(tái)
    2021-08-08
  • 最新springboot中必須要了解的自動(dòng)裝配原理

    最新springboot中必須要了解的自動(dòng)裝配原理

    本文給大家介紹springboot中必須要了解的自動(dòng)裝配原理,spring-boot-dependencies:核心依賴(lài)都在父工程中,這個(gè)里面主要是管理項(xiàng)目的資源過(guò)濾及插件,本文對(duì)springboot自動(dòng)裝配原理給大家介紹的非常詳細(xì),需要的朋友參考下吧
    2022-05-05
  • Java ThreadLocal有什么作用你知道嗎

    Java ThreadLocal有什么作用你知道嗎

    這篇文章主要為大家詳細(xì)介紹了java ThreadLocal的作用,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助
    2021-09-09
  • 排序算法的Java實(shí)現(xiàn)全攻略

    排序算法的Java實(shí)現(xiàn)全攻略

    這篇文章主要介紹了排序算法的Java實(shí)現(xiàn),包括Collections.sort()的使用以及各種經(jīng)典算法的Java代碼實(shí)現(xiàn)方法總結(jié),超級(jí)推薦!需要的朋友可以參考下
    2015-08-08
  • Java集合排序規(guī)則接口Comparator用法解析

    Java集合排序規(guī)則接口Comparator用法解析

    這篇文章主要介紹了Java集合排序規(guī)則接口Comparator用法解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-09-09
  • 基于java實(shí)現(xiàn)websocket協(xié)議過(guò)程詳解

    基于java實(shí)現(xiàn)websocket協(xié)議過(guò)程詳解

    這篇文章主要介紹了基于java實(shí)現(xiàn)websocket協(xié)議過(guò)程詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-09-09
  • Java數(shù)據(jù)結(jié)構(gòu)及算法實(shí)例:考拉茲猜想 Collatz Conjecture

    Java數(shù)據(jù)結(jié)構(gòu)及算法實(shí)例:考拉茲猜想 Collatz Conjecture

    這篇文章主要介紹了Java數(shù)據(jù)結(jié)構(gòu)及算法實(shí)例:考拉茲猜想 Collatz Conjecture,本文直接給出實(shí)現(xiàn)代碼,代碼中包含詳細(xì)注釋,需要的朋友可以參考下
    2015-06-06

最新評(píng)論