日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

面向对象4(匿名对象、内部类、包、修饰符、代码块)

發(fā)布時間:2024/10/14 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 面向对象4(匿名对象、内部类、包、修饰符、代码块) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

1.匿名對象

指在創(chuàng)建對象的時候,只有創(chuàng)建語句,沒將對象地址賦值給某個變量

new Person();

1.1 特點

1、創(chuàng)建時,可直接使用,沒有變量名

new Person().eat();

2、匿名對象在未指定其引用變量時,只可使用一次

new Person().eat();

new Person().eat();

再次調用eat(),需重新創(chuàng)建一個Person對象。

3、可作為方法接收的參數(shù),方法返回值使用

return new Person();

Demo.method(new Person());

1.2 應用場景

1、方法只調用一次時;

2、作為參數(shù)進行傳遞時(無法在傳參之前進行賦值等操作)。

2. 內部類

可寫在其他類(外部類)的成員位置和局部位置。

內部類可訪問外部類的成員,包括私有成員。

2.1 成員內部類

定義在外部類的成員位置,可用修飾類成員的修飾符修飾。

  • 若用private,則無法再其他類中被訪問
  • 其余限定修飾符都可以。
  • 若由static修飾
    • 可用外部類名直接創(chuàng)建內部類的對象
    • 外部類名.內部類名? 變量名=new? 外部類名.內部類名();
    • 外部類名.內部類名.方法名();(前提是內部類的此方法也用static修飾)
  • abstract final也可修飾,不多用

可通過外部類的對象進行訪問。

class 外部類{

? ? ?? 修飾符 ? class ? 內部類{

? ? ? }

}

內部類無法被別的類看到,訪問時需用全名。

訪問:

外部類名.內部類名 ? 變量名=new 外部類名.new 內部類()

要調用內部類的成員,需先創(chuàng)建外部類的對象,再用? .? 調用。

?

?

2.2 局部內部類

定義在外部類方法中的局部位置

可通過調用方法進行訪問

class ? 外部類{

? ? ? 修飾符 ? 返回值 ? 方法名(參數(shù)){

? ? ? ? ? ? ? ? class? 內部類{

? ? ? ? ? ? ? ? }

? ? ?? }

}

局部內部類在聲明之后才可訪問。

訪問:

在外部類的方法中,創(chuàng)建內部類對象,進行訪問:

public class Party{public void puffBall() {class Ball{public void puff() {System.out.println("氣球漲了");}}new Ball().puff();}public static void main(String[] args) {Party p=new Party();p.puffBall();} }

運行結果:

2.3匿名內部類

無名字的局部內部類,是局部內部類的一種。

意義:

臨時興義某一指定類型的子類;

定以后即刻創(chuàng)建此類的對象

作用:

1、是創(chuàng)建某個類子類對象的快捷方式

new 父類或接口(){
? ? ? ? ? //方法重寫(子類 或者接口的實現(xiàn)類)
};

public abstract class Person{public abstract void eat(); }Person p=new Person() {public void eat() {System.out.println("吃飯了");} }; p.eat();

2、匿名內部類的對象,賦值給它的父類(向上轉型)

使用匿名對象,將定義子類與創(chuàng)建子類對象兩個步驟有一個格式一次性完成。

匿名內部類若不定義變量引用,則也是匿名對象

new Person() {public void eat() {System.out.println("吃飯了");} }.eat();

2.4 總結

內部類讓然是一個獨立的類,編譯后會被編譯成獨立的.class文件,但前面會加上外部類的類名和$符號。

內部類不能用普通的方式訪問,它是外部類的一個成員,它可自由訪問外部類的任何成員。

成員內部類可以以導入形式訪問:import? ...外部類名.內部類名。或外部類名.內部類名。

3. 包

宗旨:把.java文件(java源文件)、.class文件(編譯后的文件)以及其他resource文件(例如,.xml文件,.avi文件、.mp3文件、.txt文件等)有條理地進行一個組織,以供使用。

兩個作用:

  • 提供多層命名空間,解決命名沖突;
  • 對類按功能進行分類,是項目的組織更清晰。
  • 項目的分工也是以包為邊界

    類中聲明的包必須與實際的class文件所在的文件夾情況相一致,否則程序運行時會找不到類

    包名全部采用小寫,多層包之間用 . 連接

    類中包的聲明格式為:package? 包名.包名...包名;

    聲明包的句子必須放在有效代碼的第一行

    在訪問類的時候,為了能夠找到該類,必須使用含有包名的類全名(包名.類名):java.util.Scanner;

    若在java.lang包中,可省略包名

    同一個包下,訪問時可省略包名

    不同包,只可訪問public修飾的類

    導入包:import 包名.類名;

    *:代表的是通配符,import java.util.*代表導入util下的所有類,但是未導入util子包中的類

    不同包之間的類相互訪問:

    • 使用類的全名
    • 使用關鍵字import導入包

    4. 修飾符

    4.1 哪些修飾符可修飾哪些部分

    是否可修飾成員變量成員方法構造方法
    public
    default
    protected無意義
    private別類不可用,無意義√(不可創(chuàng)建象)
    abstract√(無方法體)要初始化對象
    static(成員)??創(chuàng)建對象時調用,不用類名調用
    final√(不可被繼承)√(常量)√(不可重寫)?

    常見規(guī)則:

    • 用public 修飾類
    • 用private修飾成員變量,有get、set方法
    • 用public 修飾方法
    • 用public修飾構造方法(單例模式的構造方法為私有)

    4.2 訪問修飾符

    ?同一類中同一包中(子類與無關類)不同包的子類不同包中的無關類
    public
    protected?
    default??
    private???
    • 僅在本類中訪問,用private
    • 本包中的類,default
    • 本包中的類和其他包中的子類,protected
    • 所有包中的所有類,public

    若類用public修飾,則類名必須與文件名相同。

    一個文件中只能有一個用public修飾的類。

    可以對類或類中的成員(字段以及方法) 加上訪問修飾符。

    • 類可見表示其它類可以用這個類創(chuàng)建實例對象。
    • 成員可見表示其它類可以用這個類的實例對象訪問到該成員;

    如果子類的方法重寫了父類的方法,那么子類中該方法的訪問級別不允許低于父類的訪問級別。

    • 這是為了確保可以使用父類實例的地方都可以使用子類實例,也就是確保滿足里氏替換原則。?

    5. 代碼塊

    局部代碼塊定義在方法或語句中

    只需關注作用域

    5.1 構造代碼塊

    定義在類中成員位置

    特點:

    1、優(yōu)先于構造方法執(zhí)行

    構造代碼塊用于執(zhí)行所有度一向均需要的初始化動作

    2、每創(chuàng)建一個對象均會執(zhí)行一次構造代碼塊

    5.2 靜態(tài)代碼塊

    定義在成員位置,使用static修飾的

    特點:

    1、優(yōu)先于主方法執(zhí)行

    優(yōu)先于構造代碼塊執(zhí)行

    當以任意形式第一次執(zhí)行該類的時候執(zhí)行

    2、該類不管創(chuàng)建愛你多少個對象,靜態(tài)代碼塊只執(zhí)行一次

    3、可用于給靜態(tài)變量賦值,用來給類進行初始化、

    5.3 類

    用到時再加載

    加載時,會執(zhí)行靜態(tài)代碼塊(一次)

    再執(zhí)行main()方法

    再在構建對象new時,執(zhí)行構造代碼塊以及構造方法

    ?

    ?

    ?

    ?

    總結

    以上是生活随笔為你收集整理的面向对象4(匿名对象、内部类、包、修饰符、代码块)的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內容還不錯,歡迎將生活随笔推薦給好友。

    主站蜘蛛池模板: 国产剧情精品 | 灌满闺乖女h高h调教尿h | 国产一区二区三区久久 | 欧美极品jizzhd欧美 | 成年人午夜影院 | 日本久久久网站 | 精品亚洲国产成人av制服丝袜 | av片免费在线播放 | 91高跟黑色丝袜呻吟在线观看 | 亚洲理论片在线观看 | 秘密的基地 | 国产香蕉尹人视频在线 | 玖玖精品在线 | 少妇高潮久久久久久潘金莲 | 国产高清免费 | 国产最新自拍 | 免费看欧美大片 | 夜夜干夜夜 | 99精品视频一区二区 | 国产噜噜噜噜噜久久久久久久久 | 日韩国产二区 | 91亚洲国产成人精品性色 | 亚洲图片在线视频 | 17c国产精品一区二区 | 色中文网 | 狠狠一区二区 | 一级黄大片| 东京av在线 | 欧美日日夜夜 | 精品在线小视频 | 国产欧美又粗又猛又爽 | 亚州av网 | 亚洲欧洲综合在线 | 欧美日韩大陆 | 97伊人网| 国产精品久久久久久久妇 | 国产新婚疯狂做爰视频 | 黄色精品视频在线观看 | 99re这里只有| 国产尤物av | 男人操女人视频网站 | 色av免费 | 国模精品一区 | 欧美高清视频一区二区三区 | 亚洲AV无码国产日韩久久 | 69xx欧美 | 人成在线 | 欧美日韩成人免费观看 | 91美女啪啪 | 女人av| 久久久久九九九 | 五月天看片 | 得得的爱在线视频 | 久久视频网 | 可以免费看黄的网站 | 欧美寡妇性猛交 | 亚洲精品久久久久久久久 | 亚洲资源网 | 日本在线免费播放 | 精品乱子伦一区二区三区 | 又嫩又硬又黄又爽的视频 | 性生活网址 | 久久裸体视频 | 狠狠人妻久久久久久综合麻豆 | 麻豆蜜桃在线观看 | 一级黄色在线 | 久久精品综合网 | 亚洲aⅴ网站 | 三级欧美韩日大片在线看 | 国产老熟女一区二区三区 | 亚洲视频在线看 | 丰满人妻一区二区三区无码av | 中文字幕在线观看视频网站 | 国产精品探花一区二区三区 | 69视频一区 | 一个人在线观看www www.97色 | 国产东北露脸精品视频 | 成年人视频在线播放 | 美国三级视频 | 黄网站色视频免费观看 | 亚洲国产第一区 | 免费看黄色的网站 | 色多多黄色 | 91porny首页入口| 伊人激情综合网 | 日本一区二区在线免费观看 | 精品成人一区二区三区久久精品 | 大地资源中文在线观看免费版 | 午夜爽爽爽视频 | 国产肥老妇视频 | 亚洲免费专区 | 18成人免费观看网站下载 | 日韩高清成人 | 欧美肉丝袜videos办公室 | 亚洲精品在线视频免费观看 | 最近中文字幕一区二区 | 夜夜高潮夜夜爽国产伦精品 | 免费大片黄在线观看视频网站 | 国产日韩欧美在线播放 |