Java程序设计案例教程(第2版)课件 5.8.2 局部内部类_第1页
Java程序设计案例教程(第2版)课件 5.8.2 局部内部类_第2页
Java程序设计案例教程(第2版)课件 5.8.2 局部内部类_第3页
Java程序设计案例教程(第2版)课件 5.8.2 局部内部类_第4页
Java程序设计案例教程(第2版)课件 5.8.2 局部内部类_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

浙江经贸职业技术学院程序设计面向对象Java语言程序设计Unit5主讲张红5.8.1内部类的运用场合5.8.3静态内部类5.8.4匿名内部类5.8内部类5.8.2局部内部类5.8.2局部内部类

局部内部类的概念局部内部类是定义在方法体内的内部类,局部内部类仅在该方法里有效。

局部内部类的被访问规则局部内部类不能被外部类和外部类以外的其他类访问,所以局部内部类是不需要访问控制符和static修饰符。5.8.2局部内部类//定义一个含有局部内部类的类OuterclassOuter{publicvoidfun(){

classInter{publicinti=10;}//局部内部类定义

Interin=newInter();//局部内部类对象创建

System.out.println(in.i);}}//运行示例publicclassInnerClassDemo05{publicstaticvoidmain(String[]args){Outerout=newOuter();//创建外部类实例

out.fun();}}正确应用示例

局部内部类只在其所定义的方法体内有效。5.8.2局部内部类classOuter{//Interin=newInter();//编译错误

//Interin=newOuter().newInter();//编译错误

//Outer.Interin=newOuter().newInter();//编译错误

//Outer.Interin=newOuter.Inter();//编译错误publicvoidfun(){classInter{publicinti=10;}Interin=newInter();//创建局部内部类的实例

System.out.println(in.i);}}错误应用示例

局部内部类不能被外部类和外部类以外的其他类访问。5.8.2局部内部类

局部内部类对外的访问规则局部内部类可以访问外部类的所有成员,包括私有成员。

若局部内部类定义在静态方法体内,局部内部类不能直接访问外部类的非静态成员,但可以访问外部类的静态成员,若需要调用外部内的非静态成员时,可以通过外部类的实例。5.8.2局部内部类

/*含局部内部类的方法fun1()*/publicvoidfun1(){classInter1{privatefloatinterF=4.0F;publicInter1(){System.out.println(f+"+"+interF+"="+(f+interF));}}newInter1();//匿名对象

}注意:外部类的方法fun1所含有的局部内部类直接访问了外部类的属性f。//定义含局部内部类的外部类OuterclassOuter{

privatefloatf=1.0F;//实例属性

privatestaticintx=90;//静态属性

/*含局部内部类的方法fun1()*//*含局部内部类的静态方法fun2()*/}对外访问示例/*含局部内部类的静态方法fun2()*/publicstaticvoidfun2(){classInter2{privateinti=10;publicInter2(){System.out.println(i+"+"+x+"="+(i+x));

floattemp=newOuter().f;//通过外部类的实例调用

System.out.println(i+"+"+temp+"="+(i+temp));}}newInter2();//匿名对象

}5.8.2局部内部类注意:外部类的静态fun2()所含有的局部内部类只能通过外部类的实例访问属性f。对外访问示例5.8.2局部内部类//创建外部类实例,调用方法fun1和fun2publicclassInnerClassTest04{publicstaticvoidmain(String

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论