首页 > 其他分享 >System类

System类

时间:2024-08-05 15:06:19浏览次数:11  
标签:形参 dest System length 数组 拷贝

System类简介

System类属于java.base模块,java.lang包下

System类不可被继承(final修饰),不可被实例化(构造器私有)。

五、System类常用方法
1.static void exit(int status)
退出当前程序,结束正在运行的java虚拟机。"形参status = 0"表示以正常状态退出。

    //演示 :以System_类为演示类,代码如下 :
    package csdn.knowledge.api.System_Math;

public class System_ {
    public static void main(String[] args) {
    //演示 : System类常用方法
        //1.exit()
        System.out.println("CSDN yyds!");
        System.exit(0);
        System.out.println("这句话能否输出?");
    }

}
输出结果:CSDN yyds!

可以看到,在执行exit语句后,下面的输出语句未能执行。

2.static void arraycopy(Object src, int srcPos, Object dest, int destPos, int length)

第一眼看到这函数是不是有点懵?雀氏,我们平时并不常见这种形参有这么多的情况。

该方法可以用于数组的拷贝,可以将原数组中的指定内容拷贝到指定新数组中的指定位置。

PS : 平时我们拷贝数组更多使用的是Arrays类中的copyOf方法,实际上copyOf方法在底层调用的就是System类中的arraycopy方法。

该方法的具体每个形参有什么作用,源码中也作了批注,如下 :

           /**
Params:
    src – the source array. 
    srcPos – starting position in the source array. 
    dest – the destination array. 
    destPos – starting position in the destination data. 
    length – the number of array elements to be copied.
*/

第一个形参 src —— 代表了数据来源的数组,即源数组。
第二个形参 srcPos —— 代表了你要从源数组的哪个位置(索引)处开始拷贝。
第三个形参 dest —— 代表了接收数据的目的地数组,即新数组。
第四个形参 destPos —— 代表了你想从新数组的哪个位置(索引)处开始,存放拷贝过来的内容。
第五个形参 length —— 代表了原数组中你想拷贝的内容的长度。

所以,该方法总的意思就是"把src数组中从srcPos索引开始共length个元素拷贝到dest数组中的从destPos索引开始处"。

实际上,我们往往使用"System.arraycopy(array1, 0, array2, 0, array1.length())"的格式,即将原数组中的内容全部拷贝至新数组。

标签:形参,dest,System,length,数组,拷贝
From: https://www.cnblogs.com/N1cholas210162702016/p/18343270

相关文章

  • System,Runtime,Math
    System,Runtime,Math在Java中,System、Runtime和Math是三个非常常用且重要的类,它们分别属于不同的包(java.lang),提供了不同的功能。下面是对这三个类的简要介绍:1.System类System类位于java.lang包中,因此它是自动导入的,不需要显式地导入。这个类提供了一些有用的类字段和静态......
  • systemverilog中for/foreach并行执行
    目录for-join_none并行foreach并行for-join_none并行for循环和fork-join_none语句可以组合使用来并行执行多个块,这里必须使用非阻塞的fork-join_none来启动多线程,因为使用fork-join_none时每一次循环都会创建新的fork块,并且不影响之后创建fork块,而fork-join则会阻塞后面的for......
  • 在C#中使用 System.Threading.Timer 实现定时任务
    在C#中使用System.Threading.Timer实现定时任务(qq.com)   前言在编写应用程序过程中,高效的任务调度都是必不可少的,无论是在实现后台服务、自动化任务或者定期数据处理。在.NET中,System.Threading.Timer类提供了一种强大而简单的方法来计划任务以特定时间间隔运行。本......
  • Mobile Systems, Applications, and Services (MobiSys, MOBISYS)
    MobileSystems,Applications,andServices{MobiSys,MOBISYS}1.AssociationforComputingMachinery(ACM)2.ACMConferences3.MobileSystems,Applications,andServices(MobiSys,MOBISYS)3.1.Proceedingsofthe22ndAnnualInternationalCon......
  • CTFSHOW 萌新 web9 解题思路和方法(利用system函数执行系统命令)
    点击题目链接,从题目页面显示的代码中可以看到我们可以使用命令执行漏洞查看网站的文件:我们首先使用system函数并使用ls命令查看当前目录下的所有文件:因为题目中提示flag在config.php文件中,所有可以直接读取该文件当然,如果题目中没有说明falg在那个文件中,我们可以使用......
  • SystemServer 进程的启动流程
    一、SystemServer 进程简介1. SystemServer进程主要的作用是启动各种系统服务,比如ActivityManagerService,PackageManagerService,WindowManagerService等各种服务。当我们的应用需要使用各种系统服务的时候也是通过与SystemServer进程通讯获取各种服......
  • 文件存储服务系统(File Storage Service System)-00-文件服务器是什么?为什么需要?
    文件服务系列文件存储服务系统(FileStorageServiceSystem)-00-文件服务器是什么?为什么需要?文件存储服务系统(FileStorageServiceSystem)-01-常见的文件协议介绍文件系统FTPUbuntu安装入门介绍文件存储服务系统(FileStorageServiceSystem)-02-SFTP协议介绍分布式文件服......
  • 自定义的 systemd 服务启动方式
    目录systemd单元文件(UnitFile)单元文件结构示例单元文件1.基础单元文件2.带有环境变量的单元文件3.自定义的ExecStartPre和ExecStartPost配置管理日志管理1.系统日志:2.应用程序日志:3.用户日志:使用prometheus配置实例1.配置prometheus2.配置alertmana......
  • Robot Operating System——内部审查(Introspection)Service
    大纲introspection_service检验Parameter值和类型修改内部审查(Introspection)功能的状态完整代码introspection_client完整代码测试参考资料在ROS2(RobotOperatingSystem2)中,内部审查(Introspection)是一种强大的功能,它允许用户和开发者查询和理解系统中的实时状态和......
  • android.uid.system sendBroadcast失效的问题
    如果是系统应用android:sharedUserId="android.uid.system"报这个错 Callingamethodinthesystemprocesswithoutaqualifieduser:android.app.ContextImpl.sendBroadcast:1188android.content.ContextWrapper.sendBroadcast:解决添加如下权限<uses-permissionandroi......