java常用類 Java的常量、變量、數(shù)組、類面試問到這些該怎么回答?
Java的常量、變量、數(shù)組、類面試問到這些該怎么回答?對于Java程序員來說,在面試的過程中,如果遇到一些基本的概念,往往很難解釋清楚。此外,面試官可以通過對這些基本概念的理解來判斷他們對Java編程
Java的常量、變量、數(shù)組、類面試問到這些該怎么回答?
對于Java程序員來說,在面試的過程中,如果遇到一些基本的概念,往往很難解釋清楚。此外,面試官可以通過對這些基本概念的理解來判斷他們對Java編程語言的理解。
當考生遇到常量、變量、數(shù)組、類等基本概念時,應分三個層次進行回答。首先,他應該清楚地描述基本概念的定義。其次,他應該描述它的具體用法。最后,他應該描述容器(JDK)如何管理這些基本元素,包括其存儲模式和生命周期管理。如果你有優(yōu)化經驗,你應該把重點放在描述優(yōu)化過程和最終效果上。
以類為例,為了解釋清楚類,我們首先從類的結構入手,重點介紹屬性(常量和變量)、方法和構造函數(shù)。然后進一步闡述了基于類的面向對象編程過程(類定義、對象創(chuàng)建和方法調用)。最后,我們討論了與類相關的三個概念:封裝、繼承和多態(tài)性。其實Java編程歸根結底是寫類,而寫類歸根結底是寫方法,而寫方法歸根結底是寫邏輯,其中涉及算法。當然,隨著云計算平臺的普及,Java的主要方法就是完成資源的調用。在工業(yè)互聯(lián)網(wǎng)時代,大量的軟件開發(fā)任務將基于該平臺。
盡管Java中的基本概念看起來很簡單(它們每天都在使用),但要清楚地解釋它們并不容易。它還可以在很大程度上解釋程序員對Java語言的認知。因此,對于Java開發(fā)人員來說,無論是初級開發(fā)職位還是主要開發(fā)職位的面試,都應該注意對Java基本概念的理解。
當類中含有常量和靜態(tài)數(shù)據(jù)成員時,如何對它們初始化?
類中只能初始化靜態(tài)常量整數(shù)數(shù)據(jù)成員。
這是因為,當時人們認為類定義中的數(shù)據(jù)定義是聲明,而不是數(shù)據(jù)定義。
僅當對象(變量、常量)由類定義時才定義數(shù)據(jù)。
靜態(tài)常量整數(shù)數(shù)據(jù)成員
1)不是對象的一部分
2)可以生成常量表達式,因此可以在類中初始化。---否則,不適合將其用作數(shù)組的大小。
靜態(tài)常量整數(shù)數(shù)據(jù)成員可用作常量表達式。如果沒有在內部定義
,則在沒有定義的情況下不能使用常量表達式。
C 11非靜態(tài)成員變量(常量)可以直接初始化,也可以在初始化表中初始化。
在C 11中初始化非靜態(tài)成員變量(常量)可視為為為變量(常量)分配默認值。
java問題,抽象類,中可以定義成員變量和常量嗎?
在Java中定義抽象類的屬性時,它們不必是常量。抽象類的要求如下:(1)抽象方法必須是公共的或受保護的(因為如果它是私有的,它就不能被子類繼承,并且子類不能實現(xiàn)該方法)。默認情況下,它是公共的;(2)抽象類不能直接實例化,需要依賴子類向上轉換;(3)抽象類必須有子類。使用擴展繼承,一個子類只能繼承一個抽象類;(4)子類(如果不是抽象類)必須覆蓋抽象類中的所有抽象方法(如果子類沒有實現(xiàn)父類的抽象方法,也必須定義為抽象類)繼承具有顯式方法重寫要求的子類,而普通類可以有選擇地決定是否重寫這些子類;(2)抽象類實際上比普通類有更多的抽象方法,其他組件與普通類完全相同;(3)普通類對象可以直接實例化,但抽象類對象只能通過向上轉換才能得到。注:一個類的子類雖然可以繼承任何一個普通類,但從開發(fā)的實際需求來看,普通類不應該繼承另一個普通類,而應該繼承抽象類。