java数据类型(补充-引用类型)

Java还提供了引用数据类型(Reference Types)。这些类型的变量存储的是对象的引用,而不是直接存储值。引用数据类型主要包括以下几类:

类型描述
类(Class)每个对象都有自己的状态(属性或字段)、行为(方法),并且可以通过构造函数初始化。
接口(Interface)接口定义了一组抽象的方法签名,但不提供具体实现。任何实现了某个接口的类都必须提供这些方法的具体实现。接口允许不同类之间共享相同的行为规范,从而提高了代码的灵活性和可扩展性。
数组(Array)数组在声明时需要指定长度,并且一旦确定就不能改变。数组中的元素可以通过索引访问,从0开始计数。
枚举(Enum)使用枚举可以使代码更具可读性和安全性,因为编译器可以在编译期检查非法值。
注释(Annotation)注解不会直接影响程序逻辑,而是用来描述或者标记代码,帮助工具处理代码。常见的内置注解包括@Override@Deprecated等。
记录(Record)记录是不可变的,并且自动提供了合理的equals()hashCode()toString()方法实现。
密封(Sealed Class)密封类允许你限制哪些类可以从一个特定的基类派生出来。这意味着你可以明确指出哪些子类可以继承这个基类,增强了对继承结构的控制力。
局部类(Local Class)这类类是在方法内部定义的类,它的作用域仅限于定义它的方法体内。局部类通常用于封装一段逻辑,特别是当这段逻辑只在这个方法内有用的时候。
匿名类(Anonymous Class)匿名类主要用于简化那些只需要一次使用的类的定义。它可以直接在表达式中创建并实例化。

总结:

引用数据类型与基本数据类型的一个关键区别在于内存管理方式的不同。基本数据类型直接存储实际值,而引用数据类型则保存指向堆内存中对象的引用地址。此外,所有引用类型的默认值都是`null`,意味着它们没有指向任何有效的对象。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/492477.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

postman关联接口用于登录(验证码会变情况)

目录 一、介绍 二、操作步骤 (一)Fiddler抓取到登录信息 (二)postman发送请求 新建请求一:登录值请求 (三)易变值赋值固定住 新建请求二:易变值验证码(uuid)请求 切换到请求一里面进行赋值绑定 一、介绍 接口有两种形式,一种是单…

SSC338Q SigmaStar 摄像头主控芯片

SSC338Q 是一款由 SigmaStar(星宸科技)推出的高集成度多媒体系统级芯片(SoC),广泛应用于高分辨率智能视频录制设备,如 IP 摄像机、车载摄像机和 USB 摄像机。 处理器: CPU:32 位双…

苹果将推出超薄和折叠款iPhone,2024年带来哪些变化?

苹果公司(AAPL)近日宣布,将对其iPhone系列进行重大升级,以应对当前市场中的销量压力。这一改变,或许会为苹果带来新的增长动力。那么,苹果的2024年新iPhone究竟有哪些亮点呢?下面我们来详细了解…

QML 粒子模拟

粒子模拟 粒子模拟 粒子模拟的核心是粒子系统(ParticleSystem), 它控制共享时间线。一个粒子使用发射器元素(Emitter)发射, 使用粒子画笔(ParticlePainter)实现可视化, 它可以是一张…

Java中的Consumer接口应该如何使用(通俗易懂图解)

应用场景: 第一次程序员A写好了个基础的遍历方法: public class Demo1 {public static void main(String[] args) {//假设main方法为程序员B写的,此时需要去调用A写好的一个遍历方法//1.如果此时B突然发现想将字符串以小写的形式打印出来,则…

WPF+MVVM案例实战与特效(四十四)- WPF多语言支持全解析:轻松实现国际化应用

文章目录 1、引言2、案例效果3、准备工作1、创建项目结构2、代码实现1、语言资源2、资源引用3、页面功能4、实现效果3、总结1、引言 在当今全球化的背景下,开发一个多语言支持的应用程序变得越来越重要。WPF提供了强大的功能来实现应用程序的国际化和本地化。本文将详细介绍如…

Java爬虫大冒险:如何征服1688商品搜索之巅

在这个信息爆炸的时代,数据就是力量。对于电商平台而言,数据更是金矿。今天,我们要踏上一场Java爬虫的冒险之旅,目标是征服1688这个B2B电商巨头,获取按关键字搜索的商品信息。这不仅是技术的挑战,更是智慧的…

《Django 5 By Example》读后感

一、 为什么选择这本书? 本人的工作方向为Python Web方向,想了解下今年该方向有哪些新书出版,遂上packt出版社网站上看了看,发现这本书出版时间比较新(2024年9月),那就它了。 从2024年11月11日至2024年12月18日期间&…

TouchGFX移植(3)增加SDRAM驱动

一)SDRAM驱动增加到工程中 1)加入驱动sdram.c文件,文件在上节课里有源代码。 2)在fmc.c文件里指定位置增加代码 SDRAM_Init();另外需要包含文件:#include “sdram.h” /* USER CODE BEGIN 0 / #include “sdram.h” …

Apache Kylin最简单的解析、了解

官网:Overview | Apache Kylin 一、Apache Kylin是什么? 由中国团队研发具有浓厚的中国韵味,使用神兽麒麟(kylin)为名 的一个OLAP多维数据分析引擎:(据官方给出的数据) 亚秒级响应&#xff…

【Token】校验、会话技术、登录请求、拦截器【期末实训】实战项目学生和班级管理系统\Day15-后端Web实战(登录认证)\讲义

登录认证 在前面的课程中,我们已经实现了部门管理、员工管理的基本功能,但是大家会发现,我们并没有登录,就直接访问到了Tlias智能学习辅助系统的后台。 这是不安全的,所以我们今天的主题就是登录认证。 最终我们要实现…

前端(组件传参案例)

父组件(商品详情页) 子组件上边放大图 底下缩小轮播图 需求分析:父组件获取图片数据,传给底下子组件进行进行轮播,实现父组件给子组件传参。然后底下子组件轮播后,把当前图片下标给父组件,实现子组件给父组件传参。父组…

【Linux网络编程】第十二弹---构建与优化HTTP请求处理:从HttpRequest到HttpServer的实战

✨个人主页: 熬夜学编程的小林 💗系列专栏: 【C语言详解】 【数据结构详解】【C详解】【Linux系统编程】【Linux网络编程】 目录 1、HttpRequest类 1.1、基本结构 1.2、构造析构函数 1.3、反序列化函数 1.4、GetLine() 1.5、打印函数…

使用k6进行kafka负载测试

1.安装环境 kafka环境 参考Docker搭建kafka环境-CSDN博客 xk6-kafka环境 ./xk6 build --with github.com/mostafa/xk6-kafkalatest 查看安装情况 2.编写脚本 test_kafka.js // Either import the module object import * as kafka from "k6/x/kafka";// Or in…

Linux内存管理 --- 进程创建虚拟地址的过程

文章目录 前言一、进程虚拟地址空间二、进程号1的创建过程2.1 kernel_init2.2 kernel_execve2.2.1 alloc_bprm2.2.2 bprm_stack_limits2.2.3 copy_string_kernel2.2.4 bprm_execve 2.3 bprm_execve2.3.1 prepare_binprm2.3.2 load_binary2.3.3 interpreter 三、load_elf_binary…

uniapp blob格式转换为video .mp4文件使用ffmpeg工具

前言 介绍一下这三种对象使用场景 您前端一旦涉及到文件或图片上传Q到服务器,就势必离不了 Blob/File /base64 三种主流的类型它们之间 互转 也成了常态 Blob - FileBlob -Base64Base64 - BlobFile-Base64Base64 _ File uniapp 上传文件 现在已获取到了blob格式的…

springboot447教师薪酬管理系统(论文+源码)_kaic

摘 要 传统信息的管理大部分依赖于管理人员的手工登记与管理,然而,随着近些年信息技术的迅猛发展,让许多比较老套的信息管理模式进行了更新迭代,老师信息因为其管理内容繁杂,管理数量繁多导致手工进行处理不能满足广…

三、ubuntu18.04安装docker

1.使用默认ubuntu存储库安装docker 更新软件存储库 更新本地软件数据库确保可以访问最新版本。打开终端输入:sudo apt-get update 卸载旧版本的docker 建议继续之前卸载任何旧的docker软件。打开终端输入:sudo apt-get remove docker docker-engine …

Java JDK8之前传统的日期时间-Date、SimpleDateFormat、Calendar

1. Date (1) Date代表的是日期和时间 (2) 常见构造器和常用方法 构造器说明public Date()创建一个Date对象,代表系统当前日期和时间public Date(long time)根据传入的时间毫秒值创建一个Date对象 方法说明public long getTime()返回从1970.1.1 00:00:00到此时的毫…

powershell(1)

免责声明 学习视频来自 B 站up主泷羽sec,如涉及侵权马上删除文章。 笔记的只是方便各位师傅学习知识,以下代码、网站只涉及学习内容,其他的都与本人无关,切莫逾越法律红线,否则后果自负。 泷羽sec官网:http…