首页 > 其他分享 >内部类(成员,静态,匿名,局部)

内部类(成员,静态,匿名,局部)

时间:2023-01-04 10:55:16浏览次数:30  
标签:部类 内部 静态 局部 对象 匿名 成员

  1. 在成员内部类也可以被一些权限修饰符修饰
  2. 成员内部类的地位相当于成员变量:定义格式:修饰符  class  类名  {}
  3. jdk16以前成员内部类不能定义静态变量,jdk16以后可以
  4. 获取成员内部类对象的两种方式:
  • 方式1:外部类编写方法,对外提供内部类对象(一般是内部类对象被private修饰)   格式  public  void   方法名(){return   new 内部类对象名()}
  • 方式2 :直接创建,格式:外部类对象名.内部类对象名    对象名   = new  外部类对象名().new 内部类对象名();

ps:外部类成员变量和内部类成员变量重名时,我们用外部类名.this.变量名来在内部类中访问外部类访问,this指代调用者的地址

 

 

静态内部类:

  1. 静态内部类是一种特殊的成员内部类(用static修饰)
  2. 静态方法中只能调用静态变量
  3. 创建静态内部类对象的方式:外部类对象名.内部类对象名    对象名= new 外部类对象名.内部类对象名();
  4. 如何调用静态内部类中的方法:
  • 静态方法:外部类对象名.内部类对象名.方法名();
  • 非静态方法:创建静态内部类对象,在去调用

 

局部内部类:

  1. 将内部类定义在方法里面就叫局部内部类,相当于方法里面的局部变量
  2. 外部无法使用,需要在方法内部创建对象并且使用
  3. 该类可以直接访问外部类成员,也可以访问内部类局部变量
  4. 用static修饰的方法,都可以用类名.方法名();来调用

 

匿名内部类:

  1. 匿名内部类指隐藏了名字的内部类,可以写在成员位置,也可以写在局部位置
  2. 匿名内部类的格式:new 接口名/类名(){方法的重写};
  3. 格式细节:包含了实现或者继承,方法的重写,对象的创建,整体就是一个类的子类对象或者一个接口的实现类对象,可以运用在多态或者接口多态
  4. 使用场景:当方法参数是接口或者类时,以接口为例,可以传递这个接口的实现类对象,如果接口只实现一次,就可以使用匿名内部类简化代码,调用方法时传递匿名内部类或者可以用接口名/类名   对象名=匿名内部类,然后在把对象名传到方法中去

 

标签:部类,内部,静态,局部,对象,匿名,成员
From: https://www.cnblogs.com/lyjzht/p/17024258.html

相关文章

  • 华为静态路由命令详解
    配置命令语法:Ip 目的子网 目的子网掩码 出接口(当前) 下一跳地址(对端设备地址)目的子网:想要到达的网络,可以是网段也可以是某一个具体的ip地址目的子网掩码:子网掩码越精确,路......
  • Ubuntu 16.04设置静态IP地址(NAT方式)
    转发:https://www.linuxdiyf.com/linux/20707.html 1.安装环境VMware10.0.4build-2249910Ubuntu16.04x86_642.在VMware中,配置网络环境VMware在默认安装完成之后,......
  • Centos7修改静态IP
    Centos7修改静态IP1、开启虚拟机,执行终端命令vim/etc/sysconfig/network-scripts/ifcfg-ens332、修改下面几个配置(没有的就添加)BOOTPROTO="static"//ip设置为静态......
  • abstract; final; 属性赋值的先后顺序; 静态变量与实例变量的区别; instanceof关键字的使
    abstract注意事项。abstract不能修饰:private,static,final这些方法。abstract抽象要重写----》用来子类继承实现方法的1、abstract不能用来修饰属性、构造器等构造器不能......
  • 深入 Spring 系列之静态资源处理
    1.背景前一段时间,WebIDE开源的过程中,无意间接触到 ​​webjars​​,觉得比较有趣,于是研究并整理了一下。webjars是将前端的库(比如jQuery)打包成Jar文件,然后使用基于JV......
  • Apache和Nginx设置伪静态(URL Rewrite)的方法
    在Apache中有两种方法配置,一是通过httpd.conf文件,二是通过.htaccess文件。 使用httpd.conf来配置rewrite策略。 要使用httpd.conf文件来设置伪静态策略,我们可以......
  • 三种伪静态配置文件的转换
    一、web.config主要应用在iis7/iis7.5的服务器上,编写规则的时候注意问号的使用,如经常用到的.*?规则,到里面只能写成.*这块是需要注意的地方 二、httpd.ini主要应......
  • 静态方法如何调用非静态方法,创建线程的方式
    在静态方法中,new一个类对象,用类对象调用非静态方法第一种方式创建线程publicclassMain{  privateclassMyRunimplementsRunnable{    publicvoid......
  • DevSecOps之静态代码分析(浅)
    什么是静态代码分析静态应用安全测试(SAST)也称静态分析,是一种测试方法,通过分析源代码发现容易让组织的应用受到攻击的安全漏洞。SAST在编译代码之前扫描应用。它也称......
  • 静态路由配置
    1、路由器的工作原理路由器属于网络层设备,能够根据IP数据包包头的信息,选择一条最佳路径,将数据包转发出去,以实现不同网段的主机之间的互相访问。路由器时刻维持着一张路由表,......