学习java时候的笔记(十七)

Runtime

  • Runtime表示当前虚拟机的运行环境
方法名说明
getRuntime()当前系统的运行环境对象
exit(int status)停止虚拟机
availableProcessors()获得CPU的线程数
maxMemory()JVM能从系统中获取总内存的大小(单位byte)
totalMemory()JVM已经从系统中获取的总内存大小(单位byte)
freeMemory()JVM剩余内存大小
exec(String command)运行cmd命令

Demo:

public class RuntimeDemo1 {
    public static void main(String[] args) throws IOException {
        // 1.获取Runtime的对象
        Runtime r1 = Runtime.getRuntime();
        Runtime r2 = Runtime.getRuntime();
        System.out.println(r1 == r2);//true r1和r2获取的是同一个对象,即只存在一个虚拟机

       //获取当前CPU的线程数
        System.out.println(r1.availableProcessors());

        //查看虚拟机能获得的总内存的大小, 单位byte
        System.out.println(r1.maxMemory());

        //查看虚拟机已经获取的内存大小, 单位byte
        System.out.println(r1.totalMemory());

        //查看虚拟机剩余内存的大小, 单位byte
        System.out.println(r1.freeMemory());

        //运行cmd命令  用不了dir
        //shutdown : 关机
        //加上参数才能运行
        // -s : 默认在一分钟后关机
        // -s -t 指定时间 : 指定关机时间, 如果"指定时间是3600"则在一小时后关机
        // -a : 取消关机操作
        // -r : 关机并重启
        r1.exec("shutdown -s -t 0");

        //exit 可以停止虚拟机
        //状态码
        //0: 正常停止
        // 非 0 ;异常停止
        r1.exit(0);
        System.out.println("看看我执行了吗?");
    }
}

Object

  • Object是Java中的顶级父类。所有的类都直接或间接的继承于Object类。

  • object类中的方法可以被所有子类访问,所以我们要学习Object类和其中的方法。

构造方法名说明
Object()空参构造
  • Object中只有空参构造
成员方法名说明
toString()返回对象的字符串表示形式
equals(Object obj)比较两个对象是否相等
clone(int a)对象克隆

Demo:

public class ObjectDemo1 {
    public static void main(String[] args) {
        //toString 返回对象的字符串表示形式
        Object obj = new Object();
        Object obj1 = new Object();
        String str1 = obj.toString();
        String str2 = obj1.toString();
        System.out.println(str1);//java.lang.Object@4eec7777     "@"前是包名+类名 后面是对象的地址值
        System.out.println(str2);
        //equals
        String s = "abc";
        String b = "abc";
        StringBuilder sb = new StringBuilder("abc");
        StringBuilder sb2 = new StringBuilder("abc");
        System.out.println(s.equals(b));
        System.out.println(s.equals(sb));
        //因为equals方法是被s调用的,而s是字符串所以equals要看string类中的
        //字符串中的equals方法,先判断参数是否为字符串'如果是字符串,再比较内部的属性
        //但是如果参数不是字符串,直接返回false
        System.out.println(sb.equals(s));
        System.out.println(sb.equals(sb2));
        ///因为equals方法是被sb调用的,而sb是stringBuilder所以这里的equals方法要看stringBuilder中的equals方法
        // 那么在StringBuilder当中,没有重写equals方法
        ///使用的是object中的
        ///在object当中默认是使用==号比较两个对象的地址值
        ///而这里的s和sb记录的地址值是不一样的,所以结果返回false
    }
}

最后:欢迎大家关注我的公众号
在这里插入图片描述

  • 15
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Yliken

你的鼓励就像月亮,照亮了在黑暗

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值