Java学习笔记------内部类
内部类的定义:
在一个类的里面再定义一个类
内部类的使用场景:
- 内部类表示的事物是外部类的一部分(B类表示的事物是A类的一部分,且B单独存在没有意义)
- 内部类单独出现没有任何意义
内部类的访问特点
- 内部类可以直接访问外部类的成员,包括私有
- 外部类要访问内部类的成员,必须要创建对象
内部类的分类:
- 成员内部类
- 静态内部类
- 局部内部类
- 匿名内部类
成员内部类:
- 写在成员位置的,属于外部类的成员
- 可以被一些修饰符修饰
获取成员内部类对象:
- 当成员内部类被private修饰时,在外部类中编写方法,对外提供内部类的对象
- 当成员内部类被非私有修饰时,直接创建对象,直接创建格式:外部类名.内部类名 对象名=外部类对象.内部类对象
当外部类成员变量和内部类成员变量重名时,在内部类访问的方法:
System.out.println(out.this.变量名);
静态内部类(特殊的成员内部类):
静态内部类只能访问外部类中的静态变量和静态方法,如果想要访问非静态的需要创建对象
创建静态内部类对象的格式:
外部类名.内部类名 对象名=new 外部类名.内部类名();
- 调用非静态方法的格式:先创建对象,用对象调用
- 调用静态方法的格式:外部类.内部类名.方法名();
局部内部类(隐藏了名字的内部类):
- 将内部类定义在方法里面就叫局部内部类,类似于方法里面的的局部变量
- 外界是无法直接使用,需要在方法内部创建对象并使用
- 该类可以直接访问外部类的成员,也可以访问方法内的局部变量
- 可以写在成员位置也可以写在局部位置
匿名内部类:匿名内部类本质上就是隐藏了名字的内部类
格式:new 类名或者接口名(){
重写方法;
};
该格式包含了继承或实现,方法重写,创建对象,整体就是一个类的子类对象或者接口的实现类对象
使用场景:当方法的参数是接口或者累的话,若某个类只需要用一次,则不用再单独定义一个类,可以使用匿名内部类
相关文章:
Java学习笔记------内部类
内部类的定义: 在一个类的里面再定义一个类 内部类的使用场景: 内部类表示的事物是外部类的一部分(B类表示的事物是A类的一部分,且B单独存在没有意义)内部类单独出现没有任何意义 内部类的访问特点 内部类可以直接…...
面试题:问js的forEach和map的区别
前端面试题库 (面试必备) 推荐:★★★★★ 地址:前端面试题库 【国庆头像】- 国庆爱国 程序员头像!总有一款适合你! 前言 为什么要写这么一篇文章,原因是今天下午水群的时候&…...
Hadoop设置固定ip无效的解决办法
今天配置Hadoop的时候,执行vi /etc/sysconfig/network-scripts/ifcfg-ens33修改网络配置文件后,一切正常,但重启后IP改变了,并且在修改以及重启网络连接数次后,IP依旧不按照我在ifcfg-ens33中配置的那样,检…...
论文解读 | 用于3D对象检测的PV-RCNN网络原创
原创 | 文 BFT机器人 01 背景 本文的背景涉及到3D物体检测,这是一个在自动驾驶和机器人等领域应用广泛的重要问题。在这些领域,LiDAR传感器被广泛用于捕捉3D场景信息,生成不规则且稀疏的点云数据。这些点云数据提供了理解和感知3D场景的关键…...
kali安装volatility及插件mimikatz
1.准备工作 kali安装pip2 wget https://bootstrap.pypa.io/pip/2.7/get-pip.py python2 get-pip.py 查看pip2版本 python2 -m pip -v pip2安装升级 pip2 install --upgrade setuptools 安装2个库 pip2 install construct2.10.54 pip2 install pycryptodome 下载文件d…...
什么是阻塞队列?如何使⽤阻塞队列来实现⽣产者-消费者模型?哪个阻塞队列最常用?
阻塞队列 阻塞队列(Blocking Queue)是一种特殊类型的队列,它具有阻塞特性,即当队列为空时,试图从队列中取出元素的操作会被阻塞,直到队列中有元素可取。同样,当队列已满时,试图将元素放入队列的操作也会被阻塞,直到队列有空闲空间。 JDK 7引入了7个阻塞队列,它们都…...
Bean拷贝组件(注解驱动)方案设计与落地
一、背景 数据流转在各层之间的过程,应当是改头换面的,字段属性数量,属性名称(一般不变,但也有重构时出现变化的情况),类型名称(普遍变化例如BO、VO、DTO)。对于转换的业…...
hive的建表语句
hive建表语句CREATE TABLE ccwn_zh_event_push (customerid string,cardnumber string,accountnumber string,eventcode string,eventtime string,activities string,activityRefuseCode string,lables string)PARTITIONED BY(dt string)ROW FORMAT SERDE org.apache.hadoop.hi…...
提升效率:PostgreSQL准确且快速的数据对比方法
作为一款强大而广受欢迎的开源关系型数据库管理系统,PostgreSQL 在数据库领域拥有显著的市场份额。其出色的可扩展性、稳定性使其成为众多企业和项目的首选数据库。而在很多场景下(开发|生产环境同步、备份恢复验证、数据迁移、数据合并等)&a…...
【轻NAS】Windows搭建可道云私有云盘,并内网穿透公网访问
文章目录 1.前言2. Kodcloud网站搭建2.1. Kodcloud下载和安装2.2 Kodcloud网页测试 3. cpolar内网穿透的安装和注册4. 本地网页发布4.1 Cpolar云端设置4.2 Cpolar本地设置 5. 公网访问测试6.结语 1.前言 云存储作为近些年兴起的概念,成功吸引了各大互联网厂商下场&…...
计算机网络 第一章:概述
目录 一.因特网概述 1.1网络、互联网(互连网)和因特网 1.2internet与Internet的区别 1.3因特网服务提供者ISP(Internet Service Provider) 1.4因特网组成 二.三种交换方式 2.1电路交换 2.2分组交换(重点) 2.3报文交换 三.计算机网络的定义和分类 四.计算机网络的性能…...
centos7 firewalld ip转发设置、安装docker-compose出现错误、docker-compose部署Yapi
一 centos7 firewalld ip转发设置 #!/bin/bash #开启系统路由模式功能 vim /etc/sysctl.conf #添加下面一行 net.ipv4.ip_forward1 #运行这个命令会输出上面添加的那一行信息,意思是使内核修改生效 sysctl -p #开启firewalld systemctl start firewalld #防火墙开启…...
Cglib代理和JDK代理原理的区别
一、JDK Jdk动态代理,拿到目标类所继承的接口,生成代理类,并且代理类也会实现和目标类一样的接口。 二、Cglib Cglib代理功能更强,无论目标类是否实现接口都可以代理,他是基于继承的方式类代理目标类,如果…...
论文阅读-A General Language for Modeling Social Media Account Behavior
论文链接:https://arxiv.org/pdf/2211.00639v1.pdf 目录 摘要 1 Introduction 2 Related work 2.1 Automation 2.2 Coordination 3 Behavioral Language for Online Classification 3.1 BLOC alphabets 3.1.1 Action alphabet 3.1.2 Content alphabets 3.…...
Python中的异常处理4-3
在《Python中的异常处理4-2》中提到,except语句后面可以加上具体的异常类型。有时我们需要这个异常的其他细节,此时可以使用except...as语句。 1 except...as语句 except..as语句的格式为 except 异常类型 as 异常实例名 从以上格式中可以看到&#…...
Swift学习内容精选(一)
Swift 可选(Optionals)类型 Swift 的可选(Optional)类型,用于处理值缺失的情况。可选表示"那儿有一个值,并且它等于 x "或者"那儿没有值"。 Swfit语言定义后缀?作为命名类型Optional的简写&…...
Marin说PCB之封装设计系列---(02)--异形焊盘的封装设计总结
每天下班回家看电视本来是一件很美好的事情,可是正当我磕着瓜子看着异人之下的时候,手机突然响起来了,我以为是我们组哪个同事找我呢。一接电话居然是我的老朋友陈世美陈总,江湖人称少妇杀手。给我打电话主要是说他最近遇到一个异…...
SpringBoot使用AOP详解
目录 1 AOP是什么2 AOP概念3 Springboot中使用AOP4 AOP原理5 应用场景 1 AOP是什么 AOP(Aspect Oriented Programming)意为:面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。AOP是OOP的延续&…...
【Qt】QGroundControl入门1:介绍
1、简介 1.1 QGroundControl QGroundControl是一款开源的无人机地面控制站软件,依赖Qt库,简称QGC。 QGroundControl为任何支持 MAVLink协议 的无人机提供完整的飞行控制和任务规划。QGroundControl为 PX4 和 ArduPilot 驱动的无人机提供驱动配置。 源码:https://github.co…...
第36章_瑞萨MCU零基础入门系列教程之步进电机控制实验
本教程基于韦东山百问网出的 DShanMCU-RA6M5开发板 进行编写,需要的同学可以在这里获取: https://item.taobao.com/item.htm?id728461040949 配套资料获取:https://renesas-docs.100ask.net 瑞萨MCU零基础入门系列教程汇总: ht…...
后进先出(LIFO)详解
LIFO 是 Last In, First Out 的缩写,中文译为后进先出。这是一种数据结构的工作原则,类似于一摞盘子或一叠书本: 最后放进去的元素最先出来 -想象往筒状容器里放盘子: (1)你放进的最后一个盘子(…...
Python爬虫实战:研究MechanicalSoup库相关技术
一、MechanicalSoup 库概述 1.1 库简介 MechanicalSoup 是一个 Python 库,专为自动化交互网站而设计。它结合了 requests 的 HTTP 请求能力和 BeautifulSoup 的 HTML 解析能力,提供了直观的 API,让我们可以像人类用户一样浏览网页、填写表单和提交请求。 1.2 主要功能特点…...
Python|GIF 解析与构建(5):手搓截屏和帧率控制
目录 Python|GIF 解析与构建(5):手搓截屏和帧率控制 一、引言 二、技术实现:手搓截屏模块 2.1 核心原理 2.2 代码解析:ScreenshotData类 2.2.1 截图函数:capture_screen 三、技术实现&…...
Cursor实现用excel数据填充word模版的方法
cursor主页:https://www.cursor.com/ 任务目标:把excel格式的数据里的单元格,按照某一个固定模版填充到word中 文章目录 注意事项逐步生成程序1. 确定格式2. 调试程序 注意事项 直接给一个excel文件和最终呈现的word文件的示例,…...
抖音增长新引擎:品融电商,一站式全案代运营领跑者
抖音增长新引擎:品融电商,一站式全案代运营领跑者 在抖音这个日活超7亿的流量汪洋中,品牌如何破浪前行?自建团队成本高、效果难控;碎片化运营又难成合力——这正是许多企业面临的增长困局。品融电商以「抖音全案代运营…...
【配置 YOLOX 用于按目录分类的图片数据集】
现在的图标点选越来越多,如何一步解决,采用 YOLOX 目标检测模式则可以轻松解决 要在 YOLOX 中使用按目录分类的图片数据集(每个目录代表一个类别,目录下是该类别的所有图片),你需要进行以下配置步骤&#x…...
今日科技热点速览
🔥 今日科技热点速览 🎮 任天堂Switch 2 正式发售 任天堂新一代游戏主机 Switch 2 今日正式上线发售,主打更强图形性能与沉浸式体验,支持多模态交互,受到全球玩家热捧 。 🤖 人工智能持续突破 DeepSeek-R1&…...
tree 树组件大数据卡顿问题优化
问题背景 项目中有用到树组件用来做文件目录,但是由于这个树组件的节点越来越多,导致页面在滚动这个树组件的时候浏览器就很容易卡死。这种问题基本上都是因为dom节点太多,导致的浏览器卡顿,这里很明显就需要用到虚拟列表的技术&…...
项目部署到Linux上时遇到的错误(Redis,MySQL,无法正确连接,地址占用问题)
Redis无法正确连接 在运行jar包时出现了这样的错误 查询得知问题核心在于Redis连接失败,具体原因是客户端发送了密码认证请求,但Redis服务器未设置密码 1.为Redis设置密码(匹配客户端配置) 步骤: 1).修…...
力扣-35.搜索插入位置
题目描述 给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。 请必须使用时间复杂度为 O(log n) 的算法。 class Solution {public int searchInsert(int[] nums, …...
