电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術(shù)文章
文章詳情頁

Android開發(fā)必知的java嵌套類

瀏覽:58日期:2022-09-05 15:13:17

嵌套類指定義在另一個類的內(nèi)部的類,嵌套類的存在只是為了他的外圍類。嵌套類有四種:靜態(tài)成員類,非靜態(tài)成員類,匿名類,局部類。

靜態(tài)成員類是最簡單的一種嵌套類。最好把它看做是一個普通的類,只是恰好定義在另一個類的內(nèi)部。靜態(tài)成員類可以訪問外圍類的所有成員,包括那些私有的變量。靜態(tài)成員類同樣遵守可訪問性規(guī)則,如果將它定位私有,它就指在外圍類的內(nèi)部才能訪問到。

在Android中 最為熟悉listview的ViewHolder我們通常使用的就是靜態(tài)成員類,通常作為一個公有的輔助類。作為Listview的緩存變量緩存view中布局。

私有靜態(tài)成員類,用來代表外圍類所代表的對象的組件。

代碼如下

public class PhotoListAdapter extends RecyclerView.Adapter<PhotoListAdapter.ImageVH> {static class ImageVH extends RecyclerView.ViewHolder { //代碼省略 }}

?

非靜態(tài)成員類與靜態(tài)成員類的語法區(qū)別在于是否有修飾符static 。盡管它們的語法很像,但是兩者的區(qū)別很大。非靜態(tài)成員類的每個實例都隱含這與外部類的一個外圍實例相關(guān)聯(lián),非靜態(tài)成員類實例方法內(nèi)部,可以調(diào)用外圍實例上的方法,只有靜態(tài)成員類的實例可以在外圍類獨立存在,沒有外圍實例的情況下,無法創(chuàng)建非靜態(tài)成員類的實例。

當(dāng)非靜態(tài)成員類的實例創(chuàng)建,它與外圍實例之間的關(guān)聯(lián)也隨之被建立,而且這種關(guān)聯(lián)關(guān)系以后不能被修改。 這個關(guān)聯(lián)通常發(fā)生在外圍類的某個實例方法調(diào)用了非靜態(tài)成員類的構(gòu)造器時。 這種關(guān)聯(lián)關(guān)系需要消耗非靜態(tài)成員類實例的空間,并增加了構(gòu)造的時間開銷。 如果成員類不需要訪問外圍類實例 請加上static修飾詞

public class PhotoListAdapter extends RecyclerView.Adapter<PhotoListAdapter.ImageVH> { class ImageVH extends RecyclerView.ViewHolder { // 真是對外部類的實例持有,在Android開發(fā)中很大部分activity中的context的內(nèi)存泄露因為這個原因。 }}

?

匿名類不同與JAVA的其他語法單元,匿名類沒有名字,它不是外圍類的一個成員,它不與其他的成員一起被申明,而是在使用的同時被聲明實例化。匿名類可以出現(xiàn)在代碼任何存在表達(dá)式的地方。只有匿名類出現(xiàn)在非靜態(tài)的環(huán)境中,他才有外圍實例,即使它聲明在靜態(tài)的環(huán)境中,也不可能擁有任何靜態(tài)成員。

imageView.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) { // 代碼省略} });

?

局部類在任何'可以聲明局部變量'的地方聲明。同樣遵守作用域規(guī)則,1. 局部類擁有名字,可以被重復(fù)使用。2. 與匿名類,只有當(dāng)局部類是在非靜態(tài)環(huán)境定義的時候,才有外圍實例,不能包含靜態(tài)成員。

public class mainActivity extends Activity{ private Handler handler = new Handler(){@Overridepublic void handleMessage(Message msg) { // 此處同樣可能引起context持有導(dǎo)致的內(nèi)存泄露} }; }

?

來自:http://www.jianshu.com/p/907758c2a63f

標(biāo)簽: Java
相關(guān)文章:
主站蜘蛛池模板: 英思科GTD-3000EX(美国英思科气体检测仪MX4MX6)百科-北京嘉华众信科技有限公司 | 伺服电机_直流伺服_交流伺服_DD马达_拓达官方网站 | 交变/复合盐雾试验箱-高低温冲击试验箱_安奈设备产品供应杭州/江苏南京/安徽马鞍山合肥等全国各地 | 武汉刮刮奖_刮刮卡印刷厂_为企业提供门票印刷_武汉合格证印刷_现金劵代金券印刷制作 - 武汉泽雅印刷有限公司 | ◆大型吹塑加工|吹塑加工|吹塑代加工|吹塑加工厂|吹塑设备|滚塑加工|滚塑代加工-莱力奇塑业有限公司 | 六维力传感器_六分量力传感器_模腔压力传感器-南京数智微传感科技有限公司 | 组织研磨机-高通量组织研磨仪-实验室多样品组织研磨机-东方天净 传递窗_超净|洁净工作台_高效过滤器-传递窗厂家广州梓净公司 | 水上浮桥-游艇码头-浮动码头-游船码头-码瑞纳游艇码头工程 | 执业药师报名条件,考试时间,考试真题,报名入口—首页 | 棉柔巾代加工_洗脸巾oem_一次性毛巾_浴巾生产厂家-杭州禾壹卫品科技有限公司 | 深圳侦探联系方式_深圳小三调查取证公司_深圳小三分离机构 | 全自动过滤器_反冲洗过滤器_自清洗过滤器_量子除垢环_量子环除垢_量子除垢 - 安士睿(北京)过滤设备有限公司 | 聚丙烯酰胺PAM-聚合氯化铝PAC-絮凝剂-河南博旭环保科技有限公司 巨野电机维修-水泵维修-巨野县飞宇机电维修有限公司 | 办公室装修_上海办公室设计装修_时尚办公新主张-后街印象 | 数年网路-免费在线工具您的在线工具箱-shuyear.com | 篷房|仓储篷房|铝合金篷房|体育篷房|篷房厂家-华烨建筑科技官网 知名电动蝶阀,电动球阀,气动蝶阀,气动球阀生产厂家|价格透明-【固菲阀门官网】 | 企业VI设计_LOGO设计公司_品牌商标设计_【北京美研】 | 大学食堂装修设计_公司餐厅效果图_工厂食堂改造_迈普装饰 | 干式变压器厂_干式变压器厂家_scb11/scb13/scb10/scb14/scb18干式变压器生产厂家-山东科锐变压器有限公司 | 衡阳耐适防护科技有限公司——威仕盾焊接防护用品官网/焊工手套/焊接防护服/皮革防护手套 | 深圳富泰鑫五金_五金冲压件加工_五金配件加工_精密零件加工厂 | 焊接烟尘净化器__焊烟除尘设备_打磨工作台_喷漆废气治理设备 -催化燃烧设备 _天津路博蓝天环保科技有限公司 | 档案密集柜_手动密集柜_智能密集柜_内蒙古档案密集柜-盛隆柜业内蒙古密集柜直销中心 | 钢丝绳探伤仪-钢丝绳检测仪-钢丝绳探伤设备-洛阳泰斯特探伤技术有限公司 | 河南生物显微镜,全自动冰冻切片机-河南荣程联合科技有限公司 | 无锡网站建设-做网站-建网站-网页设计制作-阿凡达建站公司 | 立式硫化罐-劳保用品硫化罐-厂家直销-山东鑫泰鑫硫化罐厂家 | 武汉宣传片制作-视频拍摄-企业宣传片公司-武汉红年影视 | 水轮机密封网 | 水轮机密封产品研发生产厂家 | 周口市风机厂,周鼓风机,河南省周口市风机厂 | 蔡司三坐标-影像测量机-3D扫描仪-蔡司显微镜-扫描电镜-工业CT-ZEISS授权代理商三本工业测量 | 半容积式换热器_北京浮动盘管换热器厂家|北京亿丰上达 | 信阳网站建设专家-信阳时代网联-【信阳网站建设百度推广优质服务提供商】信阳网站建设|信阳网络公司|信阳网络营销推广 | 高硼硅玻璃|水位计玻璃板|光学三棱镜-邯郸奥维玻璃科技有限公司 高温高压釜(氢化反应釜)百科 | 卫生人才网-中国专业的医疗卫生医学人才网招聘网站! | 涡轮流量计_LWGY智能气体液体电池供电计量表-金湖凯铭仪表有限公司 | 洗地机_全自动洗地机_手推式洗地机【上海滢皓环保】 | 肉嫩度仪-凝胶测试仪-国产质构仪-气味分析仪-上海保圣实业发展有限公司|总部 | hc22_hc22价格_hc22哈氏合金—东锜特殊钢 | 有机肥设备生产制造厂家,BB掺混肥搅拌机、复合肥设备生产线,有机肥料全部加工设备多少钱,对辊挤压造粒机,有机肥造粒设备 -- 郑州程翔重工机械有限公司 | 脉冲布袋除尘器_除尘布袋-泊头市净化除尘设备生产厂家 |