当前位置: 首页 > news >正文

网站空间支持功能临邑建设局网站

网站空间支持功能,临邑建设局网站,wordpress文章微信分享代码,京东app下载官网目录 一、什么是内部类及为何要有内部类 二、四种内部类 1.成员内部类 成员内部类定义#xff1a; 获取成员内部类对象的方法#xff1a; 成员内部类获取外部类变量: 额外#xff1a; 2.局部内部类 局部内部类定义: 如何实现内部类当中的方法#xff1a; 3.静态内…目录 一、什么是内部类及为何要有内部类 二、四种内部类 1.成员内部类  成员内部类定义 获取成员内部类对象的方法 成员内部类获取外部类变量: 额外 2.局部内部类 局部内部类定义: 如何实现内部类当中的方法 3.静态内部类  静态内部类定义 获取静态内部类对象的方法 静态内部类获取外部变量 调用静态内部类方法 4.匿名内部类 一、什么是内部类及为何要有内部类 内部类是指在一个类的内部定义的另一个类。它可以访问外部类的成员并且可以被外部类的成员访问。 内部类有以下好处 封装性内部类可以访问外部类的私有成员这样可以增强了封装性外部类的私有成员不需要暴露给外部类以外的类可以被内部类私有化访问。 实现多继承内部类在Java中类似于C中的多重继承。一个类可以有多个内部类每个内部类可以继承自不同的类或实现不同的接口从而实现多继承的效果。 隐藏实现细节内部类可以对实现细节进行隐藏外部类无法直接访问内部类的方法和属性只能通过外部类对象来访问。 回调机制通过内部类可以实现回调机制内部类可以访问外部类的方法和成员可以在内部类中引用外部类对象的方法实现回调功能。 方便访问外部类的成员外部类可以访问内部类的私有成员这使得外部类可以很方便地访问内部类的属性和方法而不需要通过公共的接口或方法。 高级别的封装和模块化内部类可以将一些逻辑相关的代码集中在一起使得外部类更加简洁和模块化。内部类可以隐藏在外部类中只在需要的时候才暴露给外部程序。  二、四种内部类 1.成员内部类  成员内部类定义 成员内部类是定义在一个类的内部并直接于类的成员位置,相当于该内部类与外部类当中的成员变量和成员方法处于同等地位。它可以访问外部类的所有成员包括私有成员。成员内部类的定义格式为外部类.内部类 内部类对象 外部类对象.new 内部类()。 public class OuterClass {private int num;public class InnerClass {public void display() {System.out.println(num num);}} } 获取成员内部类对象的方法 OuterClass outerObj new OuterClass(); // 创建外部类对象 OuterClass.InnerClass innerObj outerObj.new InnerClass(); // 创建成员内部类对象//或者OuterClass.InnerClass oi new outerObj().new InnerClass(); 请注意如果成员内部类被私有private或受保护protected修饰外部类是无法直接访问和创建成员内部类的对象的。 但仍然有几种方式可以获取成员内部类的对象  在外部类中提供一个公共的方法来获取成员内部类的对象。在该公共方法中可以通过创建内部类对象并返回它来实现获取成员内部类的对象。 public class OuterClass {private class InnerClass {// ...}private InnerClass createInnerInstance() {return new InnerClass();}public void outerMethod() {InnerClass innerObj createInnerInstance();// 使用 innerObj 进行操作} } 成员内部类获取外部类变量: 成员内部类可以直接调用外部类的变量但是如果成员内部类当中存在与外部类重名的变量可以参考如下代码 public class OuterClass {private int outerVariable 10;public class InnerClass {private int outerVariable 20;public void printOuterVariable() {System.out.println(Inner variable: outerVariable);System.out.println(Outer variable: OuterClass.this.outerVariable);}} } 额外 在JDK 16以前 是不能在成员内部类里面定影一个静态的变量的 2.局部内部类 局部内部类定义: 局部内部类地位处于外部类的局部位置,与外部类的局部变量处于同等地位。局部内部类是定义在一个方法或作用域内部的类。它只能在所在的方法或作用域内被访问无法从外部进行访问。局部内部类的定义格式为在方法或作用域内定义的类。  public class OuterClass {public void display() {class LocalInnerClass {public void print() {System.out.println(局部内部类);}}LocalInnerClass innerObj new LocalInnerClass();innerObj.print();} } 局部内部类的对象只能在所在方法或作用域内创建和使用无法在外部进行访问。 局部内部类的作用范围在定义它的代码块内部对外部类的其他方法和代码块都是不可见的 该类可直接访问外部类的成员和方法内的局部变量  如何实现内部类当中的方法 在测试类当中 获取外部类的对象用该对象来调用包含局部内部类的成员方法  3.静态内部类  静态内部类定义 静态内部类是定义在一个类的内部且被static修饰的类。静态内部类属于成员内部类的一种,静态内部类独立于外部类的对象存在可以直接通过外部类访问即外部类.静态内部类。 public class OuterClass {private static int num;public static class StaticInnerClass {public void display() {System.out.println(静态内部类num num);}}} 获取静态内部类对象的方法 OuterClass.StaticInnerClass innerObj new OuterClass.StaticInnerClass(); // 创建静态内部类对象 静态内部类获取外部变量 静态内部类可以访问外部类的静态成员和非静态成员。如果需要访问外部类的非静态成员需要通过创建外部类的对象来访问 OuterClass outerObj new OuterClass(); outerObj.nonStaticMethod(); // 访问外部类的非静态方法 调用静态内部类方法 1.非静态方法需先创建内部类的对象 2.静态方法 直接Outer.Inner.method();即可 4.匿名内部类 匿名内部类是一种没有命名的内部类它通常用于创建接口、抽象类的非静态对象。匿名内部类没有构造方法通过实例初始化块来实现特定的初始化操作。 格式 interface MyInterface { //接口public abstract void display();//抽象方法 }new MyInterface (){ Overridepublic void display(){ //重写该方法} }; 匿名内部类会直接实现接口或继承抽象类并重写方法。创建匿名内部类的同时创建了该类的对象。旨在完成一些简单或者一次性操作的时候不需要创建一些类
http://www.zqtcl.cn/news/314628/

相关文章:

  • 成都私人做网站建设怎么切页面做网站
  • 聊城做网站的公司论坛外链代发
  • 廊坊企业自助建站网站框架设计好后怎么做
  • 手机网站建设效果wordpress 目录改变
  • 做商城网站的项目背景图片c2750服务器做网站行吗
  • 北京市专业网站建设wordpress视频站
  • 知名网站制作公南充建设机械网站
  • 网站建设实践鉴定微商小程序制作
  • 盗用别人网站图做网站快速排名优化推广手机
  • 安徽网站建设服务平台wordpress自定义统计
  • 微网站开发方案模板建站宝盒哪个牌子好
  • 低价做网站网站制作天津
  • 成都网站推广外包门户网站素材
  • wordpress 拿站网站制作北京海淀
  • 惠州网站建设行业wordpress文章阅读权限
  • 做地方网站需要什么部门批准网页版微信二维码
  • o2o网站运维建设方案宿州市网站建设
  • 上海网站排名优化公司马蜂窝是什么做的网站
  • 邢台网站建设网站淘宝小程序入口
  • 公司起名自动生成器网站优化方法
  • 太原网站开发团队wordpress 链接 插件
  • 阿克顿巴网站建设的目的智通人才招聘网
  • 网站快速优化成营销型网站制作
  • 网站建设mus18php 网站缓存文件
  • 建设企业网站企业网上银行助手下载泰安网签数据
  • 网站开发产权保护如何去掉2345网址导航
  • 网站数据库怎么备份自建网站步骤
  • 多语言版本的网站做网站西安
  • 蚌埠市住房建设部网站在线免费做网站
  • 天津网站建设网络企业网址模板