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

Java:面向对象:内部类:静态内部类与非静态内部类的比较

1.创建实例对象是否需要外部类的实例对象

静态内部类类的创建类似静态方法,只需外部类.静态内部类,不需要外部类的实例对象

Outter.Inner inner = new Outter.Inner();


非静态内部类类似调用实例方法,需要外部类的实例对象

Outter outter = new Outter();
Outter.Inner inner = outter.new Inner();


2.是否能够调用外部类的成员和方法

静态内部类不能调用外部类的非静态成员和方法
非静态内部类可以调用外部类的所有成员和方法(包括priviate)

3.是否可以有静态域和静态方法

静态内部类可以
非静态内部类不可以

4.其他类继承是否需要在构造方法中调用外部类实例对象的构造方法

静态内部类不需要
非静态内部类需要

5.是否可以嵌套静态内部类

静态内部类只可以嵌套静态内部类
非静态内部类只可以嵌套普通内部类

总结

静态内部类和静态方法

静态内部类定义时不能调用外部类的实例成员和实例方法,创建实例对象时不需要外部类的实例对象

静态方法定义时不能调用所在类的实例成员和实例方法,调用时不需要所在类的实例对象

非静态内部类和实例方法

非静态内部类定义时能调用外部类的所有成员和方法(包括private),创建实例对象时需要外部类的实例对象
实例方法定义时能调用所在类的所有成员和方法,调用时需要使用所在类的实例对象

http://www.dtcms.com/a/449826.html

相关文章:

  • 基于32位MCU的LVGL移植
  • 基于STM32单片机的语音控制智能停车场设计
  • (Kotlin协程十三)Dispatchers.Main, IO, Default 分别适用于什么场景?它们的底层是什么?
  • 郑州网站建设 seo郑州网络营销公司哪家好
  • 中山精品网站建设信息手机可以创建网站吗
  • 学习Java第三十二天——黑马点评43~47
  • 宿迁网站推广公司做企业宣传网站
  • 优选算法-双指针:6.和为s的两个数字
  • [linux仓库]System V 进程通信详解:System V消息队列、信号量
  • css过渡属性
  • Linux系统--文件系统--动静态库
  • Spring进阶 - SpringMVC实现原理(二)DispatcherServlet处理请求的过程
  • SQL 面试高频:INNER JOIN vs LEFT JOIN 怎么考?
  • 【51单片机】【protues仿真】基于51单片机智能路灯控制系统
  • 3d模型免费素材网站wordpress如何修改行距
  • 再探类对象——C++入门进阶
  • 公司网站如何维护wordpress去掉title前空格及keywords最后的逗号
  • 仙居谁认识做网站的广告投放平台代理
  • 智慧餐厅管理系统qq群排名优化软件官网
  • InnoDB核心限制与应对策略
  • 贵州建设厅监理协会网站前后端分离实现网站开发
  • QNX 开发环境搭建
  • Java技术栈 —— 使用MinIO进行大文件分片上传与下载
  • `modprobe`命令 与 `KVM`模块 笔记251006
  • 山东省建设监理协会网站打不开赣州招聘网最新招聘
  • 贵阳网站建设设计个人网页设计作品集分析
  • 音乐介绍网站怎么做做暧暧小视频网站
  • 公网带宽1m能建设电商网站吗wordpress新建数据库
  • C57-断言函数assert
  • 网站的制作建站人汽车业务网站开发公司