【从入门到起飞】JavaAPI—System,Runtime,Object,Objects类
🎊专栏【JavaSE】
🍔喜欢的诗句:更喜岷山千里雪 三军过后尽开颜。
🎆音乐分享【如愿】
🎄欢迎并且感谢大家指出小吉的问题🥰
文章目录
- 🍔System类
- ⭐exit()
- ⭐currentTimeMillis()
- 🎄用处
- ⭐arraycopy()
- 🍔Runtime类
- ⭐创建对象
- ⭐exit()
- ⭐availableProcessors()
- ⭐maxMemory()
- ⭐totalMemory()
- ⭐freeMemory()
- ⭐exec()
- 🍔Object类
- ⭐toString()
- ⭐equals()
- ⭐clone()
- 🎈注意
- 🎄浅克隆
- 🎄深克隆
- 🍔Objects类
- ⭐isNull()
- ⭐nonNull()
🍔System类
⭐exit()
终止当前运行的Java虚拟机
执行这段代码后,后面的代码都不再执行
System.exit(0);

⭐currentTimeMillis()
返回当前系统的时间(用毫秒表示)
记录的是从1970.1.1 0时0分0秒 到现在有多长时间
System.currentTimeMillis();

🎄用处
可以比较两个程序的运行时间,从而判断哪个程序效率更高
long start=System.currentTimeMillis();//调用函数long end=System.currentTimeMillis();//获取程序运行的总时间System.out.println(end - start);
⭐arraycopy()
数组拷贝
System.arraycopy(num1,num2,num3,num4,num5);
num1:被拷贝的数组
num2:从哪个索引开始拷贝
num3:数据被拷贝到的数组(目标数组)
num4:目标数组 开始的索引
num5:拷贝长度

这种情况的也可以

🍔Runtime类
可以用来监控虚拟机的内存
⭐创建对象
错误写法
Runtime r1=new Runtime();
类 Runtime 是 Java 标准库中的一个类,用于与运行时系统进行交互,但它不允许通过 new Runtime() 的方式实例化对象,因为其构造函数是私有的(private)。这意味着不能直接使用 new 关键字来创建 Runtime 类的实例。

Java 中对于某些类,特意将构造函数设计为私有,这是为了确保该类只能通过特定的方法来获取其实例。对于 Runtime 类,获取其实例的方法是使用静态方法 Runtime.getRuntime()。
正确写法
Runtime r1=Runtime.getRuntime();
⭐exit()
停止虚拟机
Runtime.getRuntime().exit(0);

⭐availableProcessors()
获取CPU的线程数
Runtime.getRuntime().availableProcessors();

⭐maxMemory()
虚拟机可以从系统中获取的总内存的大小
Runtime.getRuntime().maxMemory();
单位为b

单位是kb

单位是mb

⭐totalMemory()
虚拟机已经获取的总内存的大小
Runtime.getRuntime().totalMemory();

⭐freeMemory()
虚拟机剩余内存大小
Runtime.getRuntime().freeMemory();

⭐exec()
运行cmd命令
//打开记事本
Runtime.getRuntime().exec("notepad");

//shutdown 关机
//-s 默认1分钟后关机
//-s -t 指定时间 : 指定关机时间
//-a 取消关机操作
//-r 关机并重启
Runtime.getRuntime().exec("shutdown -s -t 3600");
//3600秒后关机
🍔Object类
Object是Java的顶级父类,Java的所有类都直接或间接地继承于Object类
⭐toString()
返回对象的字符串格式
objects.toString();

我们先把Student类中的toString()方法给注释掉


⭐equals()
s1.equals(s2);


这里,我们重写equals方法,看看效果
按快捷键Alt+insert


运行,发现变成true了


如果没有重写equals方法,默认使用Object的方法进行比较,比较的是地址值是否相等
重写后,比较的就是对象内部的属性值了
⭐clone()
🎈对象克隆
就是把A对象的属性值完全拷贝给B对象,也叫对象拷贝,对象复制。
方法在底层会帮我们创建一个对象,并把原对象中的数据拷贝过去。



🎈注意
- 一定要重写Object中的clone方法
因为我们通过看源码可以发现,clone方法是protected修饰的

由于protected修饰的成员在同一包内或子类中被访问,而对于其他包中的类,需要继承来实现

- 让Javabean类实现Cloneable接口
🎄浅克隆
不管对象内部的属性是基本数据类型还是引用数据类型,都完全拷贝过来

🎄深克隆
基本数据类型拷贝过来
字符串复用
引用数据类型会重新创建新的


🍔Objects类
⭐isNull()
Objects.isNull(s3);

源码分析

⭐nonNull()
Objects.nonNull(s3)

源码分析

🥰如果大家有不明白的地方,或者文章有问题,欢迎大家在评论区讨论,指正🥰
相关文章:
【从入门到起飞】JavaAPI—System,Runtime,Object,Objects类
🎊专栏【JavaSE】 🍔喜欢的诗句:更喜岷山千里雪 三军过后尽开颜。 🎆音乐分享【如愿】 🎄欢迎并且感谢大家指出小吉的问题🥰 文章目录 🍔System类⭐exit()⭐currentTimeMillis()🎄用…...
【Git】的分支和标签的讲解及实际应用场景
目录 讲解 环境讲述 分支标签的区别 分支 命令 场景应用 标签 命令 标签规范 讲解 环境讲述 当软件从开发到正式环境部署的过程中,不同环境的作用 开发环境:用于开发人员进行软件开发、测试和调试。在这个环境中,开发人员可以快速地…...
修改django开发环境runserver命令默认的端口
runserver默认8000端口 虽然python manage.py runserver 8080 可以指定端口,但不想每次runserver都添加8080这个参数 可以通过修改manage.py进行修改,只需要加三行: from django.core.management.commands.runserver import Command as Ru…...
kubeadm安装k8s高可用集群
目录 一、环境规划 二、注意事项: 三、环境准备: 1. 关闭防火墙规则,关闭selinux,关闭swap交换: 2. 修改主机名 3. 所有节点修改hosts文件: 4. 所有节点时间同步: 5. 所有节点实现Linux的资…...
来看看电脑上有哪些不为人知的小众软件?
电脑上的各类软件有很多,除了那些常见的大众化软件,还有很多不为人知的小众软件,专注于实用功能,简洁干净、功能强悍。 1.桌面停靠栏工具——BitDock BitDock是一款运行在Windows系统中的桌面停靠栏工具,功能实…...
一个进程最多可以创建多少个线程?
前言 话不多说,先来张脑图~ linux 虚拟内存知识回顾 虚拟内存空间长啥样 在 Linux 操作系统中,虚拟地址空间的内部又被分为内核空间和用户空间两部分,不同位数的系统,地址空间的范围也不同。比如最常见的 32 位和 64 位系统&am…...
ElasticSearch文档分析
ElasticSearch文档分析 包含下面的过程: 将一块文本分成适合于倒排索引的独立的 词条将这些词条统一化为标准格式以提高它们的“可搜索性”,或者 recall 分析器执行上面的工作。分析器实际上是将三个功能封装到了一个包里: 字符过滤器 首先&a…...
Xilinx FPGA平台DDR3设计详解(一):DDR SDRAM系统框架
DDR SDRAM(双倍速率同步动态随机存储器)是一种内存技术,它可以在时钟信号的上升沿和下降沿都传输数据,从而提高数据传输的速率。DDR SDRAM已经发展了多代,包括DDR、DDR2、DDR3、DDR4和DDR5,每一代都有不同的…...
Spring Data JPA方法名命名规则
最近巩固一下JPA,网上看到这些资料,这里记录巩固一下。 一、Spring Data Jpa方法定义的规则 简单条件查询 简单条件查询:查询某一个实体类或者集合。 按照Spring Data的规范的规定,查询方法以find | read | get开头&…...
【Leetcode Sheet】Weekly Practice 15
Leetcode Test 2586 统计范围内的元音字符串数(11.7) 给你一个下标从 0 开始的字符串数组 words 和两个整数:left 和 right 。 如果字符串以元音字母开头并以元音字母结尾,那么该字符串就是一个 元音字符串 ,其中元音字母是 a、e、i、o、u…...
人力资源社会保障部办公厅关于推行专业技术人员职业资格电子证书的通知
(人社厅发〔2021〕97号) 各省、自治区、直辖市及新疆生产建设兵团人力资源社会保障厅(局),中共海南省委人才发展局,国务院有关部门、直属机构人事部门,有关协会、学会: 为贯彻落实…...
什么是光电耦合器?如何选择型号及种类
光电耦合器(英文缩写为OC)亦称光电隔离器,简称光耦;以光为媒介传输电信号;它对输入、输出电信号有良好的隔离作用,是目前种类最多、用途最广的光电器件之一;所以,它在各种电路中得到广泛的应用。 光耦合器…...
hive里因为列名用了关键字导致建表失败
代码 现象 ParseException line 6:4 cannot recognize input near percent String COMMENT in column name or primary key or foreign key 23/11/13 11:52:57 ERROR org.apache.hadoop.hive.ql.Driver: FAILED: ParseException line 6:4 cannot recognize input near percent …...
MySQL 报错 incorrect datetime value ‘0000-00-00 00:00:00‘ for column
使用navicat导入数据时报错: MySQL 报错 incorrect datetime value ‘0000-00-00 00:00:00’ for column 这是因为当前的MySQL不支持datetime为0的情况。 MySQL报incorrect datetime value ‘0000-00-00 00:00:00’ for column错误原因,是由于在MySQL5.7…...
Jira Data Center(非集群)升级操作
一、升级准备 Jira 管理界面执行升级检查下载升级包,使用原操作方式相同的方式安装。我这里原来的版本是通过./atlassian-jira-software-9.11.2-x64.bin安装的,接下来下载atlassian-jira-software-9.11.3-x64.bin的安装文件停止 Jira,bin/st…...
Spring IOC - BeanDefinition解析
1. BeanDefinition的属性 BeanDefinition作为接口定义了属性的get、set方法。这些属性基本定义在其直接实现类AbstractBeanDefinition中,各属性的含义如下表所示: 类型 名称 含义 常量 SCOPE_DEFAULT 默认作用域:单例模式 AUT…...
ds前后台博客系统
源码私信或者公众号java大师获取 博客简介:本博客采用Spring Boot LayUI做为基础,进行的博客系统开发,与bootvue相比,更为适合开发简单的系统,并且更容易上手,简单!高效!更易上手&a…...
算法leetcode|88. 合并两个有序数组(rust重拳出击)
文章目录 88. 合并两个有序数组:样例 1:样例 2:样例 3:提示: 分析:题解:rust:go:c:python:java: 88. 合并两个有序数组: …...
GoLong的学习之路,进阶,语法之并发(并发错误处理)补充并发三部曲
这篇文章主要讲的是如何去处理并发的错误。 在Go语言中十分便捷地开启goroutine去并发地执行任务,但是如何有效的处理并发过程中的错误则是一个很棘手的问题。 文章目录 recovererrgroup recover 哦对,似乎没写错误处理的文章。后面补上。 首先&…...
猪酒店房价采集
<?php // 设置代理 $proxy_host jshk.com.cn;// 创建一个cURL资源 $ch curl_init();// 设置代理 curl_setopt($ch, CURLOPT_PROXY, $proxy_host.:.$proxy_port);// 连接URL curl_setopt($ch, CURLOPT_URL, "http://www.zujia.com/");// 发送请求并获取HTML文档…...
基于uniapp+WebSocket实现聊天对话、消息监听、消息推送、聊天室等功能,多端兼容
基于 UniApp + WebSocket实现多端兼容的实时通讯系统,涵盖WebSocket连接建立、消息收发机制、多端兼容性配置、消息实时监听等功能,适配微信小程序、H5、Android、iOS等终端 目录 技术选型分析WebSocket协议优势UniApp跨平台特性WebSocket 基础实现连接管理消息收发连接…...
vscode(仍待补充)
写于2025 6.9 主包将加入vscode这个更权威的圈子 vscode的基本使用 侧边栏 vscode还能连接ssh? debug时使用的launch文件 1.task.json {"tasks": [{"type": "cppbuild","label": "C/C: gcc.exe 生成活动文件"…...
LeetCode - 394. 字符串解码
题目 394. 字符串解码 - 力扣(LeetCode) 思路 使用两个栈:一个存储重复次数,一个存储字符串 遍历输入字符串: 数字处理:遇到数字时,累积计算重复次数左括号处理:保存当前状态&a…...
现代密码学 | 椭圆曲线密码学—附py代码
Elliptic Curve Cryptography 椭圆曲线密码学(ECC)是一种基于有限域上椭圆曲线数学特性的公钥加密技术。其核心原理涉及椭圆曲线的代数性质、离散对数问题以及有限域上的运算。 椭圆曲线密码学是多种数字签名算法的基础,例如椭圆曲线数字签…...
嵌入式学习笔记DAY33(网络编程——TCP)
一、网络架构 C/S (client/server 客户端/服务器):由客户端和服务器端两个部分组成。客户端通常是用户使用的应用程序,负责提供用户界面和交互逻辑 ,接收用户输入,向服务器发送请求,并展示服务…...
免费数学几何作图web平台
光锐软件免费数学工具,maths,数学制图,数学作图,几何作图,几何,AR开发,AR教育,增强现实,软件公司,XR,MR,VR,虚拟仿真,虚拟现实,混合现实,教育科技产品,职业模拟培训,高保真VR场景,结构互动课件,元宇宙http://xaglare.c…...
ubuntu系统文件误删(/lib/x86_64-linux-gnu/libc.so.6)修复方案 [成功解决]
报错信息:libc.so.6: cannot open shared object file: No such file or directory: #ls, ln, sudo...命令都不能用 error while loading shared libraries: libc.so.6: cannot open shared object file: No such file or directory重启后报错信息&…...
Sklearn 机器学习 缺失值处理 获取填充失值的统计值
💖亲爱的技术爱好者们,热烈欢迎来到 Kant2048 的博客!我是 Thomas Kant,很开心能在CSDN上与你们相遇~💖 本博客的精华专栏: 【自动化测试】 【测试经验】 【人工智能】 【Python】 使用 Scikit-learn 处理缺失值并提取填充统计信息的完整指南 在机器学习项目中,数据清…...
如何在Windows本机安装Python并确保与Python.NET兼容
✅作者简介:2022年博客新星 第八。热爱国学的Java后端开发者,修心和技术同步精进。 🍎个人主页:Java Fans的博客 🍊个人信条:不迁怒,不贰过。小知识,大智慧。 💞当前专栏…...
数据结构第5章:树和二叉树完全指南(自整理详细图文笔记)
名人说:莫道桑榆晚,为霞尚满天。——刘禹锡(刘梦得,诗豪) 原创笔记:Code_流苏(CSDN)(一个喜欢古诗词和编程的Coder😊) 上一篇:《数据结构第4章 数组和广义表》…...
