




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
内部类的定义与调用1一般内部类
内部类是定义在一个类的类体中的类,内部类也可以包含变量和方法。一般内部类可分为成员类、静态类和局部类三种。内部类的定义与调用1)成员类classOutC{ privateStringi="我是成员变量"; voidA(){ System.out.println("我是成员方法"); } classInC{//内部类的定义 voidprint(){ System.out.println("我是成员类"); } }}内部类的定义与调用成员类可正常访问其它类成员,也可如其它成员一样被修饰,但从外部访问成员类需注意:
Aa=newA("外部类A");//先创建外部类实例
A.Bb=a.newB();//通过外部类实例创建内部类对象eg1
publicstaticvoidmain(Stringargs[]){ OutCout=newOutC(); InCin=out.newInC(); in.print();}内部类的定义与调用eg1//成员类publicclasseg1{ publicstaticvoidmain(String[]args){ OutCout=newOutC(); OutC.InCin=out.newInC();//其它类访问内部类成员的作法
in.print(); }}classOutC{ privateinti; voidA(){ InCin=newInC();//外部类访问内部类成员的做法
in.innerInt=1; } classInC{//内部类的定义
privateintinnerInt; voidprint(){ System.out.println("generalInt="+i); } }}内部类的定义与调用
static修饰的成员类又称为静态类。①顶层类只能访问外部类的static成员。②除外部类外的其它类访问静态类时对象的创建方式和成员类不同。2)静态类
A.Bb=newA.B();//通过外部类直接创建内部类对象beg2可以使用内部类来实现接口和抽象类。eg3eg2//静态类publicclasseg2{ publicstaticvoidmain(String[]args){ OutCout=newOutC(); OutC.InCin=newOutC.InC(); in.print(); }}classOutC{ privateinti; staticintj; voidA(){ InCin=newInC(); in.innerInt=1; } staticclassInC{//顶层类的定义
privateintinnerInt; voidprint(){ // System.out.println("generalInt="+i); System.out.println("staticInt="+j); } }}eg3classeg3//外部类定义{ privateclassPContentsextendsContents//内部类实现抽象类
{ privateinti; PContents(intcn){i=cn;} publicintvalue(){returni;} } protectedclassPDestinationimplementsDestination//内部类实现接口
{ privateStringlabel; privatePDestination(StringwhereTo){label=whereTo;} publicStringreadLabel(){returnlabel;} } publicDestinationdest(Strings){returnnewPDestination(s);} publicContentscont(intcn){returnnewPContents(cn);}}//运用内部类来实现接口和抽象类中的抽象方法abstractclassContents//抽象类定义{ abstractpublicintvalue();}interfaceDestination//接口定义{ StringreadLabel();}classInnerClass//测试类{ publicstaticvoidmain(String[]args) {
eg3p=neweg3(); Contentsc=p.cont(100); Destinationd=p.dest("Tanzania"); System.out.println(c.value()); System.out.println(d.readLabel()); }}内部类的定义与调用
方法中定义的类是方法的一个局部变量。①局部类的作用域仅限于方法内,可以避免类名的冲突。②局部类只能访问方法中的final变量。
③
要使用局部类只能通过调用方法来实现,不能通过创建类的实例来完成。eg43)局部类eg4//局部类publicclasseg4{ publicstaticvoidmain(String[]args){ OutClassout=newOutClass(); Objectin=out.makeInner(); }}classOutClass{ privateintg; ObjectmakeInner(){ inti; finalintj=0;
classInnerClass{//局部类定义
voidprint(){ System.out.println("generalInt="+g); System.out.println("j="+j); } publicStringtoString(){return"InnerClass";} }
//newInnerClass().print(); //System.out.println(newInnerClass().toString()); returnnewInnerClass(); }}七、内部类的定义与调用1)什么是匿名类?2)匿名类的定义和实例创建是同时完成的。3匿名类没有class关键字,不能有修饰符,也不能定义构造方法。4)使用匿名类可使代码更简洁。2、特殊内部类——匿名类interfaceTestInterface{ voidprint();}newTestInterface(){{//匿名类实现接口publicvoidprint(){System.out.println(“Anonymousclass”);}};相当于:classAimplementsTestInterface{//一般类实现接口publicvoidprint(){System.out.println(“Anonymousclass”);}}
eg5
内部类的定义与调用——示例eg5//匿名类publicclasseg5{ publicstaticvoidmain(String[]args){ TestInterfacetest=newTestInterface(){ publicvoidprint(){System.out.println("Snonymousclassdefinition"); } }; test.print(); }}interfaceTestInterface{voidprint();}importjava.awt.*;importjava.awt.event.*;classAextendsFrame{
publicA(){
addWindowListener(newWindowAdapter(){//匿名类实现接口
publicvoidwindowClosi
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 海西蒙古族藏族自治州天峻县2025年数学五年级第二学期期末监测模拟试题含答案
- 贵州电子商务职业技术学院《EDA技术》2023-2024学年第二学期期末试卷
- 安徽现代信息工程职业学院《中国古代文学史(1)》2023-2024学年第二学期期末试卷
- 山东省潍坊市临朐一中2025年高三下学期第三次验收物理试题理试卷含解析
- 黑龙江东方学院《商务数据分析》2023-2024学年第二学期期末试卷
- 阀岛箱:现代工业中的气动控制核心
- 广州城市职业学院《画法几何与建筑制图》2023-2024学年第二学期期末试卷
- 共享职工之家建设存在问题和原因以及对策建议
- 美容院环境满意度调查
- 抗滑桩工程施工方案
- DL-T5706-2014火力发电工程施工组织设计导则
- (高清版)JTGT 3365-05-2022 公路装配式混凝土桥梁设计规范
- 《民航客舱设备操作与管理》课件-项目二 客舱服务设备
- JT-T 1495-2024 公路水运危险性较大工程专项施工方案编制审查规程
- 03 写景状物文章-2023-2024学年五年级语文阅读专项试题(统编版) 教师版2
- 普通外科临床路径(2019年版)
- 孕产妇健康知识讲座活动总结
- 天猫店铺规划方案
- 中国古代文学的人文关怀与社会责任
- 饰面人造板产品质量
- 北京市校外教育机构工作规程实施细则
评论
0/150
提交评论