第四十三章Java匿名对象

news2024/11/16 13:38:31

 

经过前面的学习,我们知道创建对象的标准格式如下:

类名称 对象名 = new 类名称();

         每次 new 都相当于开辟了一个新的对象,并开辟了一个新的物理内存空间。如果一个对象只需要使用唯一的一次,就可以使用匿名对象,匿名对象还可以作为实际参数传递。

        匿名对象就是没有明确的给出名字的对象,是对象的一种简写形式。一般匿名对象只使用一次,而且匿名对象只在堆内存中开辟空间,而不存在栈内存的引用。

public class Person {
    public String name; // 姓名
    public int age; // 年龄

    // 定义构造方法,为属性初始化
    public Person(String name, int age) {
        this.name = name;
        this.age = age;
    }

    // 获取信息的方法
    public void tell() {
        System.out.println("姓名:" + name + ",年龄:" + age);
    }

    public static void main(String[] args) {
        new Person("张三", 30).tell(); // 匿名对象
    }
}

程序运行结果为:

姓名:张三,年龄:30

         在以上程序的主方法中可以发现,直接使用了“new Person("张三",30)”语句,这实际上就是一个匿名对象,与之前声明的对象不同,此处没有任何栈内存引用它,所以此对象使用一次之后就等待被 GC(垃圾收集机制)回收。

         匿名对象在实际开发中基本都是作为其他类实例化对象的参数传递的,在后面的 Java 应用部分的很多地方都可以发现其用法,而且细心的读者可以发现,匿名对象实际上就是个堆内存空间,对象不管是匿名的还是非匿名的,都必须在开辟堆空间之后才可以使用。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

一起来了解一下Java中的String类吧!!!

简单认识Java中的String类 一、认识String类的重要性 在C语言中已经涉及到字符串了,但是在C语言中要表示字符串只能使用字符数组或者字符指针,可以使用标准库提 供的字符串系列函数完成大部分操作,但是这种将数据和操作数据方法分离开的方式…

vcruntime140_1.dll缺失了要怎么修复?多种方法助你解决丢失问题

我们在使用电脑的时候,其实最经常发生的事情就是蓝屏和dll文件缺失了吧,这也是很多网友最想解决的几个大问题。今天呢,就是有一个网友反映说他的vcruntime140_1.dll缺失了,不知道怎么解决,下面我们就来聊聊vcruntime14…

QT DAY4

做一个闹钟&#xff0c;并播报填写内容 widget.h 文件 #ifndef WIDGET_H #define WIDGET_H#include <QWidget> #include <QTimerEvent> #include <QDateTime> #include <QMessageBox> #include<QTextToSpeech> //文本转语音类namespace Ui…

你的流量虚了吗?分析手机流量卡不足量的套路

当今时代&#xff0c;手机流量的使用是每个人每天都在消耗的事情&#xff0c;在有WIFI的情况下还好&#xff0c;大家不需要担心流量用多了还是少了&#xff0c;但是在使用手机流量的时候&#xff0c;就需要注意了&#xff0c;看看是不是会用超什么的&#xff0c;但是现在有一个…

最新总结的软件测试宝典,花2天时间阅完,软件测试面试就过了......

1、测试人员需要何时参加需求分析&#xff1f; 如果条件循序 原则上来说 是越早介入需求分析越好 因为测试人员对需求理解越深刻 对测试工作的开展越有利 可以尽早的确定测试思路 减少与开发人员的交互 减少对需求理解上的偏差 2、软件测试与调试的关系 测试条件已知&#x…

uniapp Android平台各功能模块隐私合规协议

Android平台各功能模块隐私合规协议

STM32 Proteus仿真HCSR04超声波测距报警DS18B20温度采集 -0055

STM32 Proteus仿真HCSR04超声波测距报警DS18B20温度采集 -0055 Proteus仿真小实验&#xff1a; STM32 Proteus仿真HCSR04超声波测距报警DS18B20温度采集 -0055 功能&#xff1a; 硬件组成&#xff1a;STM32F103R6单片机 LCD1602显示器HCSR04超声波测距传感器DS18B20温度传感器…

数学建模常用模型(六):时间序列预测

数学建模常用模型&#xff08;六&#xff09;&#xff1a;时间序列预测 时间序列预测是数学建模中的一个重要领域&#xff0c;用于预测时间序列数据中未来的趋势和模式。时间序列预测可以帮助我们了解数据的演变规律&#xff0c;做出合理的决策和规划。 这是我自己总结的一些代…

FCPX插件-16个手绘卡通素描涂鸦图形文字标题动画 Scribble Sketch Lower Thirds

Scribble Sketch Lower Thirds包含16个手绘卡通素描涂鸦图形文字标题动画模板&#xff0c;一个简约的卡通标题动画&#xff0c;由手绘的文本动画组成&#xff0c;可帮助您轻松改善您影片创意。 这个插件包提供了各种独特的手绘风格的标题动画模板&#xff0c;包括涂鸦笔画、草…

最新FLstudio21.0.3中文版本下载更新及内容介绍

在现在这个数字音乐时代&#xff0c;各种音乐中都或多或少有些电子音乐的影子&#xff0c;或是合成器音色、或是通过数字效果器制作出的变幻莫测的变化效果。而小马丁、Brooks、Eliminate等众多电子音乐巨头便是使用FL Studio来制作音乐的。今天小编就以FL Studio五年的资深用户…

你尚未连接--代理服务器可能有问题,或地址不正确。

这种情况可能是你装了梯子之后&#xff0c;自动开启了代理服务器 解决方法&#xff1a; 1、控制面板->网络和Internet 2、网络和共享中心->internet选项 3、连接->局域网设置 4、把代理服务器的沟沟取消 这样就解决了

多线程与并发编程【线程休眠、线程让步、线程联合、判断线程是否存活】(二)-全面详解(学习总结---从入门到深化)

目录 线程休眠 线程让步 线程联合 Thread类中的其他常用方法 判断线程是否存活 线程的优先级 线程休眠 sleep()方法&#xff1a;可以让正在运行的线程进入阻塞状态&#xff0c;直到休眠时间 满了&#xff0c;进入就绪状态。sleep方法的参数为休眠的毫秒数。 public class…

数据库常见4种范式

数据库范式 1. 数据库范式1.1 第一范式&#xff08;1NF&#xff09;1.2 第二范式&#xff08;2NF&#xff09;1.3 第三范式&#xff08;3NF&#xff09;1.4 巴斯科德范式&#xff08;BCNF&#xff09;1.5 范式的优缺点1.5.1 优点1.5.2 缺点 1. 数据库范式 在关系型数据库中&…

LabVIEW开发汽车安全带张紧测试

LabVIEW开发汽车安全带张紧测试 安全带是车辆乘员安全的主要约束系统&#xff0c;通过遮挡乘员与仪表板或挡风玻璃等接触&#xff0c;显着防止致命或非致命伤害。安全带的实践在三十年内将死亡率降低到相当可观的水平&#xff0c;并且直到今天仍然是许多国家的强制性。 然而&…

基于物理机部署前后端分离项目

软件安装 安装git 安装mysql 安装redis 安装python 安装虚拟环境 安装uwsgi 安装nginx centos安装常见软件_骑台风走的博客-CSDN博客一 卸载mysql### 1 查看mysql的安装情况 rpm -qa |grep -i mysql # -i表示忽略大小写 mysql80-community-release-el7-7.noarch mysql-commun…

如何用 Github Pages 免费部署静态站点

最低成本部署静态网站 所谓静态网站&#xff0c;是指它所有内容都是静态的&#xff0c;即预先编写好并存储在服务器上&#xff0c;访问者获取到的是事先准备好的静态文件。 所以完全不需要购买服务器&#xff0c;除了域名之外&#xff0c;几乎不会有其他花销。 我在构建五个静…

3.7.cuda运行时API-使用cuda核函数加速warpaffine

目录 前言1. warpAffine2. warpAffine案例2.1 导言2.2 main函数2.3 warpaffine_to_center_align函数2.4 warp_affine_bilinear函数2.5 warp_affine_bilinear_kernel核函数2.6 AffineMatrix结构体 3. 补充知识总结 前言 杜老师推出的 tensorRT从零起步高性能部署 课程&#xff0…

【Linux后端服务器开发】软硬链接与动静态库

目录 一、软硬链接 二、动静态库 1. 静态库 2. 动态库 一、软硬链接 软链接&#xff1a;ln -s myfile soft_file.link 硬链接&#xff1a;ln myfile hard_file.link 查看映射关系&#xff1a;ll -li 软硬链接区别&#xff1a;是否具有独立的inode 软链接具有独立的inode…

Appium+python自动化(一)- 环境搭建—上(超详解)

最近整理了一下自动化的东西&#xff0c;先前整理的python接口自动化已经接近尾声。即将要开启新的征程和篇章&#xff08;Appium&python&#xff09;。那么首相的问题就是搭建环境了。好久没搭建环境又踩了不少坑&#xff0c;appium的环境搭建比较繁琐&#xff0c;好多同行…

零撸X2E大热门​Salad Venture的空投!

Salad Venture 随着Web3的走红&#xff0c;X to Earn成为热门概念&#xff0c;其中X可指运动、购物、游戏、学习和创作等诸多应用场景&#xff0c;Earn则是通过这些特定场景产生经济收益。与Web2企业将利益分配权牢牢掌握在自己手中不同&#xff0c;X to Earn的本质是将参与者…