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

景区类网站延吉网站网站建设

景区类网站,延吉网站网站建设,谷歌官网,工作室怎么开文章目录 1.什么是内部类?2.实例内部类3.静态内部类4.局部内部类5.匿名内部类6.结语 1.什么是内部类? 内部类就是在一个类中再定义一个类,内部类也是封装的体现.它可以被声明为 public、protected、private 或默认访问控制符。内部类可以访问外部类的所有成员变量和方法&…

文章目录

  • 1.什么是内部类?
  • 2.实例内部类
  • 3.静态内部类
  • 4.局部内部类
  • 5.匿名内部类
  • 6.结语

1.什么是内部类?

内部类就是在一个类中再定义一个类,内部类也是封装的体现.它可以被声明为 public、protected、private 或默认访问控制符。内部类可以访问外部类的所有成员变量和方法,包括私有成员。内部类可以用来实现一些特殊的功能,比如实现回调函数、事件处理等。常见的内部类包括实例内部类(成员内部类)、静态内部类、本地内部类、匿名内部类等。

2.实例内部类

实例内部类是指定义在另一个类的实例内部的类。它与静态内部类不同,静态内部类是定义在另一个类中的静态类。实例内部类可以访问外部类的实例变量和方法,也可以定义自己的成员变量和方法。

class Outer {// ...class Inner {// ...}// ...
}

上述中的Inner类就是实例内部类.

实例内部类的实例化方式如下:
在使用实例内部类时,需要首先创建外部类的实例,然后通过外部类实例来访问内部类。
在这里插入图片描述

实例内部类不能定义静态成员变量,如果定义,要被final修饰:
在这里插入图片描述
实例内部类不能定义静态方法:
在这里插入图片描述
如果实例内部类和外部类 的 成员变量名相同,那么实力内部类会先访问自己的成员变量
在这里插入图片描述
实例内部类的特点:

  1. 实例内部类不能定义静态成员变量,如果定义,要被final修饰
  2. 实例内部类不能定义静态方法
  3. 如果实例内部类和外部类 的 成员变量名相同,那么实例内部类会先访问自己的成员变量

3.静态内部类

Java中的静态内部类是指在一个类的内部定义的另一个类,并且该内部类被声明为静态(static)的。静态内部类与普通内部类的区别在于,静态内部类不依赖于外部类的实例,可以直接通过外部类名访问

静态内部类的定义方式如下:

class OuterClass {// 外部类的成员和方法static class StaticInnerClass {// 静态内部类的成员和方法}
}

静态内部类的实例化方式如下:

OuterClass.StaticInnerClass innerObj = new OuterClass.StaticInnerClass();

以下是静态内部类的一些注意点:

静态内部类可以访问外部类的静态成员和方法,但不能访问外部类的非静态成员和方法
实例:
在这里插入图片描述
同时,静态内部类也可以定义静态成员和方法,这些成员和方法与外部类的静态成员和方法类似,可以直接通过类名访问。
在这里插入图片描述
方法也是一样的就不一一演示了.

静态内部类的使用场景包括但不限于:

  1. 将一个类封装在另一个类中,使得外部类的代码更加简洁清晰。
  2. 需要在外部类的静态方法中使用一个类,但又不想将该类声明为外部类的静态成员。
  3. 需要在同一个包中访问一个类,但不想将该类声明为公共类。

4.局部内部类

Java局部内部类是指在一个方法或代码块内部定义的内部类。与成员内部类不同,局部内部类只能在定义它的方法或代码块内部使用,无法在外部访问。

局部内部类的语法格式如下:

class OuterClass {// 外部类代码void outerMethod() {// 外部类方法class LocalInnerClass {// 局部内部类代码}// 使用局部内部类LocalInnerClass localInner = new LocalInnerClass();}
}

局部内部类的特点:

  1. 只能在定义它的方法或代码块内部使用,无法在外部访问
  2. 可以访问外部类的成员变量和方法,包括私有成员。
  3. 局部内部类可以访问方法中的局部变量,但是这些变量必须是final类型的。
  4. 局部内部类可以实现接口或继承抽象类。
  5. 局部内部类不能定义静态成员或方法,也不能包含静态代码块。

局部内部类使用的很少,了解即可.

5.匿名内部类

Java匿名内部类是一种特殊的内部类,它没有类名,直接在创建对象时定义并实现。通常用于创建只需要使用一次的类对象,可以简化代码,提高代码的可读性和可维护性。

匿名内部类的语法格式如下:

new 类名/接口() {// 匿名内部类的类体部分
};

示例:

interface myInterface {public void func();
}public class Demo1 {public static void main(String[] args) {new myInterface(){@Overridepublic void func() {System.out.println("方法的重写");}}.func();}
}
// 输出:
// 方法的重载

看到这里是不是有点懵.别慌,来看下面这张图:
在这里插入图片描述
这段代码定义了一个接口 myInterface,其中有一个抽象方法 func()。使用匿名内部类实现了 myInterface 接口,并重写了 func() 方法。最后通过创建匿名内部类的对象来调用重写后的 func() 方法

内名内部类的使用包含了继承或实现,方法重写,创建对象。整体就是一个类的子类对象或者接口的实现类对象.

使用场景: 当方法的参数是接口或者类时,以接口为例,可以传递这个接口的实现类对象,如果实现类只要使用一次,就可以用匿名内部类简化代码。

6.结语

内部类在Java中的一个重要特性,要重点掌握实例内部类,静态内部类和匿名内部类.

感谢你的观看!希望这篇文章能帮到你!
专栏: 《从零开始的Java学习之旅》在不断更新中,欢迎订阅!
“愿与君共勉,携手共进!”
在这里插入图片描述

http://www.yayakq.cn/news/44112/

相关文章:

  • 网站做现金抽奖 能通过网站 网站 建设
  • 求个网站2021wordpress搞个会员注册
  • 网站建设 用什么语言phpcms v9做网站
  • 如何建立一个大型的网站设计一个品牌
  • 网站销售源码做公司永久免费网站什么好
  • 淮安网站网页设计中国建筑网官网查询报考
  • 给网站做游戏视频怎么赚钱网络销售网站推广
  • 网站开发算法长沙最近什么传染病
  • 网站销售都怎么做的做一家开发网站的公司简介
  • 黑龙江省网站前置审批网站wordpress注册页面
  • 做t-shirt素材网站网站建设的目的意义
  • 福州网站建设推广公司胖子马wordpress模板 q8免费版
  • 大同建设银行保安招聘网站高端网站制作效果好
  • 做网站要学些什么软件丽水建设公司网站
  • 快速建立平台网站开发建站教程详解滨州做微商城网站
  • 做样子的网站报告网站开发环境
  • 下载什么软件可以做动漫视频网站wordpress下载教程
  • wordpress能做多大的站北京南站官网
  • 网站开发设计需求网站数据做面板分析
  • 阿联酋网站后缀北京标识设计制作公司
  • 酒类网站该怎么做网站建设有哪些知识点
  • 哪些网站可以做迁徙图wordpress添加右侧悬浮窗
  • 长沙网开亿面做网站多少钱宁乡建设局网站
  • 网站开发专业怎么样网页加速器破解版
  • 求2021没封的良心网站小学老师在哪个网站做ppt
  • 湖州网站建设培训小学网站建设情况说明
  • 陕西宝陵建设集团网站上谷网络网站建设
  • 济南集团网站建设价格制作软件的app有哪些
  • 企业网站定制收费标准徐州建站软件
  • 仿百度文库网站源码商业版dedecms(梦织)系统内核广州线上推广公司