關(guān)于Java初識(shí):基本語(yǔ)法概念總結(jié)

Main函數(shù)的作用,可以保證類的準(zhǔn)確的運(yùn)行,程序的入口
Javac是運(yùn)行,java是編譯
類的首字母大寫:
標(biāo)示符:由26個(gè)英文大小寫組成;數(shù)字:0-9符號(hào)_$字符組成 定義合法:數(shù)字不可以開(kāi)頭,不能使用關(guān)鍵字;Java嚴(yán)格區(qū)分大小寫,盡量見(jiàn)名之意
注釋: // // / 文檔注釋-說(shuō)明書*/ (注釋不編譯到字節(jié)碼文件中) 注釋作用:注解說(shuō)明\調(diào)試程序\面試的時(shí)候—開(kāi)發(fā)代碼必須寫注釋,寫程序也必須寫注釋.(新手老手的區(qū)別就是寫不寫注釋),代碼就是人的思想中的體現(xiàn)形式,
寫代碼的時(shí)候: 先寫多行注釋,需求 怎么想的-思路(步驟寫)
1. 定義一個(gè)類,java程序都是以類的形式存在的,,累的形式就是字節(jié)碼文件的最終體現(xiàn)
2.定義主函數(shù),讓類可以獨(dú)立運(yùn)行
3.字樣所需要的輸出語(yǔ)句
步驟: 1.用class關(guān)鍵字來(lái)完成類的定義,并起一個(gè)閱讀性強(qiáng)的類名
2.主函數(shù):固定格式,
3.輸出語(yǔ)句

常量 :
整數(shù)常量:所有整數(shù)
小數(shù)常量:所有小數(shù)
布爾型數(shù)據(jù),較為特殊;是true或false
字符常量:將一個(gè)數(shù)字字母或者符號(hào)用’’單引號(hào)表示
字符串常量:將一個(gè)或多個(gè)字符用雙引號(hào)表示;
null常量:只有一個(gè)null;
整數(shù)的四種表現(xiàn)形式:
二進(jìn)制:0 1滿二進(jìn)1
八進(jìn)制: 0-7滿8進(jìn)1,用0開(kāi)頭:就是二進(jìn)制位 3個(gè)二進(jìn)制位就是一個(gè)八進(jìn)制位
十進(jìn)制:0-9 滿10進(jìn)1
十六進(jìn)制 0-9 A-F 滿16進(jìn)一 用0x開(kāi)頭 A-10 其實(shí)就是二進(jìn)制中的四個(gè)二進(jìn)制為一個(gè)十六進(jìn)制位
負(fù)數(shù)的二進(jìn)制的表現(xiàn)形式:其實(shí)就是這個(gè)數(shù)的正數(shù)二進(jìn)制取反加一(負(fù)數(shù)的二進(jìn)制位是最高位)

修飾符(public\static) 返回值類型 函數(shù)名(參數(shù)類型 形式參數(shù)1,參數(shù)類型 形式參數(shù)2)
{
執(zhí)行語(yǔ)句;
return 返回值;
}

  1. 屬性:是對(duì)象所具有的特征
  2. 方法:是對(duì)象具有的行為。
  3. 類:把對(duì)象共性信息歸納,且用語(yǔ)言描述出來(lái),是對(duì)象抽象出來(lái)的
  4. 對(duì)象:具體存在的
  5. 接收數(shù)據(jù):
    Scanner input = new Scanner(System.in);(需要導(dǎo)包)
  6. Switch語(yǔ)句中,括號(hào)里只能是整數(shù)或自符類型的數(shù)據(jù)。
    <switch(result){
    case 1:System.out.println("****");break;
    case 2:System.out.println("\\");break;
    case 3:System.out.println("####");break;
    default:
    System.out.println("選擇有誤,即將退出");
    //退出
    System.exit(1);
    }>
  7. 退出語(yǔ)句:
    System.exit(1);
  8. 隨機(jī)數(shù):
    int result = (int)(Math.random()*10)%3+1;
  9. 封裝:把一些東西包裝在一起。
  10. 抽象:由一堆對(duì)象抽取一個(gè)類的過(guò)程。
  11. 畫類圖:
    類名
    屬性(“+”表示公有的,public類型,“—”表示私有的privat類型)
    方法名
    12:構(gòu)造方法:方法名和類名完全一樣,無(wú)返回值,通常是public訪問(wèn)修飾,給類內(nèi)部成員進(jìn)行初始化。
    如果Dog類是第一次使用
    《1》 類加載器加載Dog類到內(nèi)存,產(chǎn)生Dog類的type類對(duì)象。
    《2》 在棧中給對(duì)象變量dd分配內(nèi)存。
    《3》 在堆中給對(duì)象分配內(nèi)存
    《4》 對(duì)堆內(nèi)存基本類型屬性,進(jìn)行清零操作。
    《5》 執(zhí)行構(gòu)造方法中的代碼,對(duì)屬性進(jìn)行初始化。
    《6》 將堆內(nèi)存首地址賦給對(duì)象變量dd。
    構(gòu)造方法的潛規(guī)則:
    《1》定義一個(gè)類,不寫構(gòu)造方法,編譯器會(huì)自動(dòng),添加一個(gè)無(wú)參無(wú)功能的構(gòu)造方法。
    《2》如果定義一個(gè)帶參數(shù)構(gòu)造,編譯器不在自動(dòng)添加無(wú)參無(wú)功能的構(gòu)造方法,構(gòu)造參數(shù)的函數(shù)名不可與屬性名一致,否則不會(huì)在構(gòu)造方法中賦相同的值,如同名this.name=name
    This指將來(lái)類執(zhí)行的代碼。
    《3》.(構(gòu)造方法)子類構(gòu)造方法中的第一條語(yǔ)句,如果沒(méi)有使用super感覺(jué)真顯示調(diào)用父類構(gòu)造,默認(rèn)調(diào)用父類的無(wú)參構(gòu)造。
    《4》(構(gòu)造方法)構(gòu)造方法地 名字必須和類名完全相同,沒(méi)有返回類型
    13.繼承:不勞而獲
    關(guān)鍵字 子類 extends 父類
    super在子類調(diào)用父類必須放在構(gòu)造方法的第一條語(yǔ)句。
    *********一般,在父類加一個(gè)無(wú)參數(shù)無(wú)功能的構(gòu)造方法
    隱士規(guī)則:
    《1》父類的方法,定義的了 有參數(shù)的構(gòu)造方法,無(wú)參數(shù)的構(gòu)造方法不生效
    《2》.子類繼承父類后的構(gòu)造方法中第一條語(yǔ)句會(huì)默認(rèn)調(diào)用
    步驟:
    子類(如果子類和父類有參數(shù),那么構(gòu)造器的第一條必須是super語(yǔ)句后加參數(shù)變量------父類有子類沒(méi)有,子類構(gòu)造器的第一條語(yǔ)句super后跟常量,,,,,子類和父類沒(méi)有參數(shù)的話,不需要使用super)
    《1》在內(nèi)存中的字段分配空間
    《2》給子類里的屬性初始話
    《3》實(shí)例化父類對(duì)象,然后是主類對(duì)象
    包的作用:限制訪問(wèn)范圍;防止命名沖突
    繼承規(guī)則:
    《1》.如果一個(gè)類沒(méi)有標(biāo)明繼承自那個(gè)父類,默認(rèn)是繼承自O(shè)bject,
    《2》實(shí)例化子類對(duì)象時(shí),必然會(huì)先實(shí)例化出一個(gè)父類對(duì)象,然后再父類對(duì)象的基礎(chǔ)上進(jìn)行的擴(kuò)展出一個(gè)子類對(duì)象
    《3》(構(gòu)造方法)子類構(gòu)造方法中的第一條語(yǔ)句,如果沒(méi)有使用super感覺(jué)真顯示調(diào)用父類構(gòu)造,默認(rèn)調(diào)用父類的無(wú)參構(gòu)造。
    《4》(構(gòu)造方法)構(gòu)造方法地 名字必須和類名完全相同,沒(méi)有返回類型
    《5》子類不能繼承父類的三方面內(nèi)容————(private成員,子類與父類不在同包父類使用默認(rèn)訪問(wèn)權(quán)限的成員不能繼承/構(gòu)造方法)
    《6》.遵循里氏替換原則的兩個(gè)類才可以建立繼承關(guān)系,

14.方法重寫(子類和父類有相同的方法)的規(guī)則:
《1》.方法重寫是在兩個(gè)類中(父與子)
《2》.方法名稱相同,參數(shù)列表相同,返回類型相同或是其子類,訪問(wèn)修飾符的范圍可以擴(kuò)大但是不能縮小。
重寫之后看重寫對(duì)象new的是誰(shuí) ,調(diào)用的就是誰(shuí)。
《3》方法綁定是在程序運(yùn)行的時(shí)候進(jìn)行的,根據(jù)new的對(duì)象是誰(shuí)就調(diào)用誰(shuí)的方法,屬于動(dòng)態(tài)綁定。

訪問(wèn)修飾符:private:在本類 調(diào)用
默認(rèn)的friendly在本類 同包 調(diào)用
Protect在本類 同包 子類 調(diào)用
Public在本類 同包 子類 其他類 調(diào)用。

15.方法的重載
《1》方法重寫是在一個(gè)類中
《2》方法名稱相同,參數(shù)列表不相同,(參數(shù)個(gè)數(shù)不同,對(duì)應(yīng)位置上的參數(shù)類型不同)
重寫之后看重寫對(duì)象new的是誰(shuí)
《3》方法綁定是在程序編譯的時(shí)候進(jìn)行的,根據(jù)參數(shù)列表不相同決定 調(diào)用誰(shuí)的方法,屬于靜態(tài)綁定。
16.抽象方法:
1。沒(méi)有實(shí)現(xiàn)的方法(有大括號(hào)就是實(shí)現(xiàn)的。沒(méi)有就是沒(méi)有實(shí)現(xiàn)的方法大括號(hào))去掉后, 在public后加 abstract關(guān)鍵字,規(guī)則是:如果一個(gè)方法有抽象方法的時(shí)候,這個(gè)類必須存在abstract必須定義成抽象類;
總結(jié)
《1》沒(méi)有實(shí)現(xiàn)的方法,(即沒(méi)有大括號(hào)的方法{ })叫抽象方法,必須加abstract
《2》包含抽象方法的類必須定義成抽象類,但是抽象不一定是包含抽象方法。
《3》. 抽象方法的意義:在于給子類制定標(biāo)準(zhǔn)和規(guī)范。。用來(lái)約束子類
標(biāo)準(zhǔn)和規(guī)范體現(xiàn)在:一方面體現(xiàn)在 子類中的 方法重寫上
2217.抽象類作用:規(guī)則
《1》一個(gè)子類繼承了抽象的父類,子類要么實(shí)現(xiàn)(即重寫父類中所有的抽象方法)父類中所有的抽象方法,否則子類必須也必須定義成抽象類
《2》抽象類不能實(shí)例化(就是不能new對(duì)象)
final關(guān)鍵字:不允許繼承父類,在類的class前加final,,不允許繼承屬性在void前繼承屬性,,屬性或方法里的常量,在類型前加final關(guān)鍵字,
instanceof 判斷對(duì)象是否是類的對(duì)象
開(kāi)辟原則:對(duì)原來(lái)的代碼封閉,對(duì)于新的代碼開(kāi)放
18.多態(tài):
《1》定義;相同的對(duì)象對(duì)同一個(gè)方法,表現(xiàn)出不同的行為
《2》表現(xiàn)實(shí)現(xiàn):方法重載、方法重寫,

  1. 接口:USB接口是一組規(guī)范,就是一組規(guī)范或標(biāo)準(zhǔn)。抽象的類
    什么是面向接口編程?
    規(guī)則:(也就是說(shuō)改一下關(guān)鍵字class-interface;里面的方法都是抽象的但是沒(méi)有abstract關(guān)鍵字;不加public也是公共的)《1》.兩方面理解:一方面從類的角度來(lái)說(shuō)是是一組純的抽象類(有abstract,就是這個(gè)類的方法都是抽象方法,即不存在非抽象的類,但是 里面都是抽象的方法,但是沒(méi)有關(guān)鍵字abstract)接口里所有的方法都是公共的加不加關(guān)鍵字public都可以
    從意義的角度來(lái)說(shuō):接口就是一組規(guī)范或標(biāo)準(zhǔn),
    《2》(implements 關(guān)鍵字)類實(shí)現(xiàn)接口
    a.變相的實(shí)現(xiàn)多繼承(因?yàn)橹辉试S有一個(gè)父類)
    b。可以將任務(wù)分解,有利于實(shí)現(xiàn)團(tuán)隊(duì)合作,
    《3》接口是體現(xiàn)的是一種能力,設(shè)實(shí)現(xiàn)了接口,誰(shuí)具備了這種能力
    面向接口編程
    一個(gè)類只能有一個(gè)public,繼承一個(gè)父類,但是可以實(shí)現(xiàn)多個(gè)接口和抽象類的區(qū)別?
    抽象類:只能是這個(gè)類的本身或者子類才能傳過(guò)來(lái);
    接口:只要實(shí)現(xiàn)接口的類都能傳過(guò)來(lái);
    接口的好處
    1.變相的實(shí)現(xiàn)多繼承,
    2.可以將任務(wù)分解,有利于實(shí)現(xiàn)團(tuán)隊(duì)合作,
    抽象類和借口的區(qū)別
    類里面的參數(shù),傳的時(shí)候傳類就是類的本身或者是子類對(duì)象,接口是只要是接口的都能傳過(guò)來(lái)
    3.接口體現(xiàn)的是一種能力

20集合:
Collection:接口存儲(chǔ)一組不唯一,無(wú)序?qū)ο?br> List接口存儲(chǔ)不唯一,有順序(插入對(duì)象)的對(duì)象
Set接口存儲(chǔ)一組唯一,無(wú)序的對(duì)象
Map接口存儲(chǔ)一組鍵值對(duì)象,提供key和value的映射…有HashMap和TreeMap
List的get(int index)方法獲取元素
Map的get(Object key)方法獲取元素
Iterator的next()方法獲取元素

HashMap(集合) 定義的size用來(lái)統(tǒng)計(jì)元素個(gè)數(shù) key是set。values是Coleection 是object類型
Map co = new HashMap();
co.size();統(tǒng)計(jì)字典的元素個(gè)數(shù)
co.get ("CN")存放的是object類型的鍵,想獲取某一元素的值
co.containsKey("FR"),判斷是否存在某一元素。
co.remove("FR");
co.keyset();、、鍵集合 返回字符串
co.values();//值集合字符串
co.clear();全部清除
co.isEmpty ()判斷是否為空

list的get(int index)方法獲取元素,Map的get(Object key)方法獲取元素,iterator的next方法獲取元素
Vactor(保證安全/多線程)和ArrayList(提高速度,單線程,重效率輕安全)的異同:vactor擴(kuò)容,默認(rèn)增加一倍,ArrayList增長(zhǎng)50%

Hashtable(安全)和HashMap(無(wú)安全)的區(qū)別:
Hashtable繼承Directionary類,HashMap實(shí)現(xiàn)Map接口
Hashtable線程安全,HAshMap線程非安全;
Hashtable不允許null值,HashMap允許null值

迭代器:實(shí)現(xiàn)Iterator接口的都稱為迭代器(iterater遍歷一個(gè)集合、for each循環(huán))
接口的方法:Boolean hasnext()是否存在下一個(gè)元素,返回bool值,Object next():返回要訪問(wèn)的下一個(gè)元素

泛型:類型不確定;,List<T>(類定義不確定,實(shí)例化的時(shí)候就確定了) 由類產(chǎn)生對(duì)象的時(shí)候
讀取便利的時(shí)候代碼有變化不用強(qiáng)轉(zhuǎn),對(duì)于test2的檢查,就不用強(qiáng)轉(zhuǎn)
LinkedList<Dog> dogs = new LinkedList<Dog>();

早期java利用jdbc---odbc 橋接的技術(shù),現(xiàn)在是純的jdbc操作數(shù)據(jù)庫(kù)
程序員調(diào)用的接口與類 如:
DriverManager類 Connection接口 Statement接口 ResultSet接口

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • (一)Java部分 1、列舉出JAVA中6個(gè)比較常用的包【天威誠(chéng)信面試題】 【參考答案】 java.lang;ja...
    獨(dú)云閱讀 7,239評(píng)論 0 62
  • 一:java概述:1,JDK:Java Development Kit,java的開(kāi)發(fā)和運(yùn)行環(huán)境,java的開(kāi)發(fā)工...
    ZaneInTheSun閱讀 2,799評(píng)論 0 11
  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語(yǔ)法,類相關(guān)的語(yǔ)法,內(nèi)部類的語(yǔ)法,繼承相關(guān)的語(yǔ)法,異常的語(yǔ)法,線程的語(yǔ)...
    子非魚_t_閱讀 34,618評(píng)論 18 399
  • 1、.java源文件: 一個(gè)以”.java“為后綴的源文件:只能有一個(gè)與文件名相同的類,可以包含其他類。 2、類方...
    Hughman閱讀 1,738評(píng)論 1 9
  • 1.import static是Java 5增加的功能,就是將Import類中的靜態(tài)方法,可以作為本類的靜態(tài)方法來(lái)...
    XLsn0w閱讀 1,419評(píng)論 0 2

友情鏈接更多精彩內(nèi)容