<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      內(nèi)部類

      內(nèi)部類

      內(nèi)部類概念

      • 在一個類內(nèi)部再定義一個完整的類

      特點

      • 編譯之后可生成獨立的字節(jié)碼文件

      • 內(nèi)部類可直接訪問外部類的私有成員,而不破壞封裝

      • 可以為外部類提供必要的內(nèi)部功能組件

      分類

      1. 成員內(nèi)部類

        • 在類的內(nèi)部定義,與實例變量、實例方法同級別的類

        • 外部類的一個實例部分,創(chuàng)建內(nèi)部類對象時,必須依賴外部類對象、

           Outer out = new Outer();
           Inner in = out.new Inner();
        • 當(dāng)外部類、內(nèi)部類存在重名屬性時,會優(yōu)先訪問內(nèi)部類屬性

           //內(nèi)部類屬性和外部類屬性相同,用    外部類名字.this.屬性
           //如   Outer.this.name
        • 成員內(nèi)部類不能定義靜態(tài)成員

      2. 靜態(tài)內(nèi)部類(static 只有靜態(tài)內(nèi)部類才可以用)

        • 不依賴外部類對象,可直接創(chuàng)建或通過類名訪問,可聲明靜態(tài)成員

        • 靜態(tài)內(nèi)部類:和外部類相同

        • 調(diào)用外部類的屬性

          • 先創(chuàng)建外部類對象

          • 再調(diào)用外部類對象的屬性

      3. 局部內(nèi)部類

        • 定義在外部類的方法中,作用范圍和創(chuàng)建對象范圍僅限于當(dāng)前方法

        • 局部內(nèi)部類訪問外部類當(dāng)前方法中的局部變量時,因無法保障變量生命周期與自身相同,變量必須修飾為final

        • 限制類的使用范圍

      4. 匿名內(nèi)部類

        • 沒有類名的局部內(nèi)部類(特征與內(nèi)部類相同)

        • 必須繼承一個父類或者實現(xiàn)一個接口

        • 定義類、實現(xiàn)類、創(chuàng)建類對象的語法合并,只能創(chuàng)建一個該類的對象

        • 優(yōu)點:減少代碼量

        • 缺點:可讀性差

       

      Object類

      • 超類、基類,所有類的直接或間接父類,位于繼承樹類的最頂層

      • 任何類,如沒有書寫extends顯示繼承某個類,都默認直接繼承Object類,否則為間接繼承

      • Object類中所定義的方法,是所有對象都具備的方法

      • Object類型可以存儲任何對象

        • 作為參數(shù),可以接受任何對象

        • 作為返回值,可以返回任何對象

      Object類常用方法

      • getClass()

        • public final Class<?> getClass(){}

        • 返回引用中存儲的實際對象類型

        • 應(yīng)用: 通常用于判斷兩個引用中實際存儲對象類型是否一致

      • hashCode()方法

        • public int hashCode(){}

        • 返回該對象的哈希碼值

        • 哈希值根據(jù)對象的地址或字符串或數(shù)字使用hash算法計算出來的int類型的數(shù)值

        • 一般情況下相同對象返回相同哈希碼

      • toStrig()方法

        • public String toString(){}

        • 返回該對象的字符串表示(表現(xiàn)形式)

        • 可以根據(jù)程序需求覆蓋該方法 如:展示對象各個屬性值

      • equals()方法

        • public boolean equals(Object obj){}

        • 默認時限為(this == obj),比較兩個對象地址是否相同

        • 可以進行覆蓋,比較兩個對象的內(nèi)容是否相同

      • finalize()方法

      • 當(dāng)對象被判定為垃圾對象時,由JVM自動調(diào)用此方法,以標記垃圾對象靜茹回收隊列

      • 垃圾對象:沒有有效引用指向此對象時,為垃圾對象

      • 垃圾回收 :由GC銷毀垃圾對象,釋放數(shù)據(jù)存儲空間

      • 自動回收機制:JVM的內(nèi)存耗盡,一次性回收所有垃圾對象

      • 手動回收機制:使用System.gc();通知JVM執(zhí)行垃圾回收

      包裝類

      定義

      • 基本數(shù)據(jù)類型所對應(yīng)的引用數(shù)據(jù)類型

      • 包裝類對應(yīng)

        • byte --- Byte

        • short --- Short

        • int --- Integer

        • long --- Long

        • float --- Float

        • double --- Double

        • boolean --- Boolean

        • char --- Character

      類型轉(zhuǎn)換與裝箱、拆箱

      裝箱
      • 類型轉(zhuǎn)換: 裝箱,基本類型轉(zhuǎn)換成引用類型的過程

         int num = 10;
         Integer integer = new Integer.valueOf(num);
         //JDK1.5后可以自動,實質(zhì)是一樣的
         Integer integer = num;
      拆箱
      • 類型轉(zhuǎn)換:拆箱,引用類型轉(zhuǎn)換成基本類

         Integer integer = new Integer(10);
         int num = integer.intValue();
         //自動拆箱
         int num = integer
      基本類型和字符串之間轉(zhuǎn)換
      1. 基本類型轉(zhuǎn)換成字符串

          1. 使用+號

             int num = 16;
             String s1 = num + "";
          1. 使用Integer中的toString()方法

             int num = 16;
             String s2 = Integer.toString(num);
      2. 字符類型轉(zhuǎn)換成基本類型

        • 使用Integer.parseIntXXX();

           String str = "150";
           int num = Integer.parseInt(str);
      3. boolean字符串類型轉(zhuǎn)換成基本類型,”true“---->true 非”true“---->false

        • 使用Boolean.parseBoolean();

           String str = "true";
           booolean b1 = Boolean.parseBoolean(str);

      整數(shù)緩沖區(qū)

      • Java預(yù)先創(chuàng)建了256個常用的整數(shù)包裝類型對象

      • 在實際應(yīng)用當(dāng)中,對已創(chuàng)建的對象進行復(fù)用

        Integer integer1 = new Integer(100);
        Integer integer2 = new Integer(100);
        //integer1 與 integer2不相等
        //因為new的對象地址不一樣

        Integer integer3 = 100;
        Integer integer4 = 100;
        //integer3 與 integer4相等
        //在-128~127區(qū)間內(nèi)在堆空間里由一個數(shù)組保存了他們的對象

        Integer integer5 = 200;
        Integer integer6 = 200;
        //integer5 與 integer6不相等
        //因為堆空間中沒有它們的對象,要重新創(chuàng)建,地址不同

      String類

      概述

      • 字符串是常量,創(chuàng)建之后不可改變

      • 字符串字面值存儲在字符串池中,可以共享

      • String s ="hello";產(chǎn)生一個對象,字符串池中存儲

      • String s = new String("Hello");//產(chǎn)生兩個對象,堆、池各存儲一個

      常用方法

      • public int length():返回字符串長度

      • public char charAt(int index):根據(jù)下標獲取字符

      • public boolean contains(String str):判斷當(dāng)前字符串中是否包含str

      • public char[] toCharArray():將字符串轉(zhuǎn)換成數(shù)組

      • public int indexOf(String str):查找str首次出現(xiàn)的下標,存在,則返回該下標;不存在,則返回-1

      • public int lastIndexOf(String str):查找字符串在當(dāng)前字符串中最后一次出現(xiàn)的下標索引

      • public String trim():去掉字符串前后的空格

      • public String toUpperCase():將小寫轉(zhuǎn)換大寫

      • public String toLowerCase():將大寫轉(zhuǎn)換成小寫

      • public boolean startsWith(String str):判斷字符串是否以str開頭

      • public boolean endsWith(String str):判斷字符串是否以str結(jié)尾

      • public String replace(char oldChar,char newChar):將舊字符串替換成新字符串

      • public String[] spilt(String str)根據(jù)str做拆分

        String str = "java is the best programing ,language";
        String array = str.spilt(" ");
        for(String string : array){
        System.out.println(string);
        }//輸出空格分離的數(shù)組

        //換成
        String array = str.spilt("[ ,]");
        //輸出空客或逗號分離的數(shù)組

        //換成
        String array = str.spilt("[ ,]+");
        //輸出多個空格或括號分離的數(shù)組
      • equals()比較是否相等

        equalsIgnoreCase()忽略大小寫的比較

      • compareTo()比較(在字檢表里的順序)

        String s1 = "abc";//a 97
        String s2 = "xyz";//x 120
        System.out.println(s1.compareTo(s2));
        //輸出-23
        //先比第一個,如果相等比第二個,有結(jié)果停止
        //像"abc" "abcxyz" 則比長度
        String s1 = "abc";
        String s2 = "abcxyz";
        System.out.println(s1.compareTo(s2));
        //輸出-3
        //兩個一樣0

      可變字符串

      • StringBUffer:可變長字符串,JDK1.0提供,運行效率滿、線程安全

      • StringBuilder:可變長字符串,JDK5.0提供,運行效率快、線程不安全

      • String的區(qū)別: 比String效率高,比String節(jié)省內(nèi)存

      • 方法

        StringBuffer s = new StringBuffer();
        StringBuilder s = new StringBuilder();
        • append()追加

          s.append(字符串);
        • insert()添加

          s.insert(位置,字符串)
        • replace()替換

          s.replace(開始位置,結(jié)束位置,替換字符串)
        • delete()刪除

          s.delete(開始位置,結(jié)束位置)
        • 清空 用delete()

      BigDecimal

      • 位置:java.math包中

      • 作用:精確計算浮點數(shù)

      • 創(chuàng)建方式: BigDecimal bd = new BigDecimal(1.0);

      • 方法:

        • BigDecimal add(BigDecimal bd)

        • BigDecimal subtract(BigDecimal bd)

        • BigDecimal multiply(BigDecimal bd)

        • BigDecimal divide(BigDecimal bd)

          • 除法devide(BigDecimal bd,int scal,RoundingMode mode)

          • 參數(shù)scal:指定精確到小數(shù)點后幾位

          • 參數(shù)mode

            • 指定小數(shù)部分的取舍模式,通常采用四舍五入的模式

            • 取值為BigDecimal.ROUND_HALF_UP

      Date類

      • Data表示特定的瞬間,精確到毫秒。Date類中的大部分方法都已經(jīng)被Calendar類中的方法取代

      • 時間單位

        • 1秒 =1000毫秒

        • 1毫秒 = 1000微秒

        • 1微妙 = 1000納秒

      • //創(chuàng)建對象
        Date date = new Date();
        //方法befoore after
        boolean b = date1.before(date2);
        boolean b = date2.after(date2);
        //比較compareTo()
        date1.compareTo(date2);
        //是否相等equals()
        boolean b = date1.equals(date2);

      Calendar類

      • Calendar提供了獲取或設(shè)置各種日歷字段的方法

      • 構(gòu)造方法

        • protected Calendar():由于修飾符是protected,所以無法直接創(chuàng)建該對象

      • 其他方法

        • 使用默認時區(qū)和區(qū)域獲取日歷

          static Calendar getInstance()
        • 設(shè)置日歷的年、月、日、時、分、秒

          void set (int year,int month,int date,int hourofday,int minute,int second)
        • 返回給定日歷字段的值。字段比如年、月、日等

          int get(int field)
        • 用給定的Date設(shè)置此日歷的時間。Date-Calendar

          void setTime(Date date)
        • 返回一個Date表示此日歷的時間。Calendar-Date

          Date getTime()
        • 按照日歷的規(guī)則,給指定字段添加或減少時間量

          void add(int field,int amount)
        • 毫秒為單位返回該日歷的時間值

          long getTimeMillies()

      SimpleDateFormat

      • SimpleDateFormat是一個以與語言環(huán)境有關(guān)的方式來格式化和解析日期的具體類

      • 進行格式化(日期---->文本)、解析(文本---->日期)

      • 常用的時間模式字母

        • y------年

        • M------年中的月份

        • d------月中的天數(shù)

        • H------一天中的小時(0~23)

        • m------分鐘

        • s------秒

        • S------毫秒

      • 創(chuàng)建SimpleDateFormat對象 y 年 M 月

        SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd HH-mm-ss");
        //創(chuàng)建Date
        Date date = new Date();
        //格式化date 把日期轉(zhuǎn)換為字符串
        String str = stf.format(date);
        System.out.println(str);
        //輸出 2022/10/08 20-08-28

        //解析 把字符串轉(zhuǎn)換為日期
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd");
        Date date2 = sdf.parse("1990/05/01");
        System.out.println(date2);
        //輸出 Tue May 01 00:00:00 CDT 1990

      System類

      • System系統(tǒng)類,主要用于獲取系統(tǒng)的屬性數(shù)據(jù)和其它操作,構(gòu)造方法私有的

      • 方法:

        • 復(fù)制數(shù)組

           static void arraycopy(src,srcPos,dest,destPos,leng);
           //src:源數(shù)組
           //srcPos:從哪個位置開始復(fù)制
           //dest:目標數(shù)組
           //destPos:目標數(shù)組的位置
           //length:復(fù)制的長度
           /
        • 獲取當(dāng)前系統(tǒng)時間,返回的是毫秒值

           static long currentTimeMillis();
        • 建議JVM趕快啟動垃圾回收器回收垃圾

           static void gc();
        • 退出jvm,如果參數(shù)是0表示正常退出jvm,非0表示異常退出jvm

           static void exit(int status);

           

        •  

      posted on 2022-10-09 08:19  SNOWi  閱讀(55)  評論(0)    收藏  舉報

      導(dǎo)航

      主站蜘蛛池模板: 无遮无挡爽爽免费视频| 综合偷自拍亚洲乱中文字幕| 在线看高清中文字幕一区| 日本高清视频网站www| 国产一区日韩二区三区| 国产欧美日韩高清在线不卡 | 狠狠干| 国产精品女人毛片在线看| 永久无码天堂网小说区| 老色鬼永久精品网站| 儋州市| 精品国产精品午夜福利| 亚洲一区二区三区在线播放无码| 又色又爽又黄的视频网站| 自慰无码一区二区三区| 麻豆一区二区三区精品视频| 国产亚洲无线码一区二区| 国产又色又爽无遮挡免费动态图| 亚洲乱色一区二区三区丝袜| 国产一区二区高清不卡| 香港日本三级亚洲三级| 蜜桃一区二区三区在线看| 欧洲尺码日本尺码专线美国又| 中文字幕人妻中出制服诱惑 | 精品久久久久久久久午夜福利| 国产精品亚洲二区在线看| 最新国产精品好看的精品| 高清不卡一区二区三区| 夜夜偷天天爽夜夜爱| 老鸭窝在线视频| 国产精品成人一区二区三| 日韩人妻无码精品久久| 精品国产迷系列在线观看| 俄罗斯美女真人性做爰| 97久久久亚洲综合久久| 熟妇人妻中文a∨无码| 福鼎市| 亚洲一区久久蜜臀av| 国产精品午夜无码AV天美传媒| 亚洲人成网站观看在线观看| 色综合天天色综合久久网|