黑马程序员_JAVA笔记18——其他对象

-------  android培训java培训、期待与您交流! ----------
1、System,里面全是静态方法和属性,常用的具有
            out   标准输出,默认控制台,
            in    标准输入,可以接收键盘的输入。
    static Properties  getProperties():确定当前的系统属性
    类Properties是HashTable的子类。

import java.util.*;
class SystemDemo
{
        public static void main(String[] args)
        {
                //jvm在启动时,需要加载一些系统信息,下面的prop保存的就是一些系统信息,我们可以自定一些信息,保存,并取出
                Properties prop = System.getProperties();
                //因为Properties是Hashtable的子类,也就是Map集合的一个子类对象。
                //那么可以通过map的方法取出该集合中的元素
                //该集合中存储的都是字符串,没有泛型定义

                
                //如何在系统中自定义一些特有信息
                System.setProperty("mykey","myvalue");

                //获取指定属性信息
               String value =  System.getProperty("os.name");
                sop(value);

                //可不可以在虚拟机启动时,动态加载一些属性信息?
                String v = System.getProperty("haha");
                sop(v);//没有haha,返回null


                for(Object obj:prop.keySet());
                {
                        String value = (String)prop.get(obj);
                        sop(obj+"ddddd"+value);
                }
        }
        public static void sop(Object obj)
        {
                System.out.println(obj);
        }
}

2、Runtime,每个jvm应用程序都有一个Runtime类实例,使应用程序能与其运行的环境相连接,可以通过getRuntime方法获取当前运行时,应用程序不能创建自己的Runtime类实例。
    该类中并没有提供构造函数,说明不可以创建其对象,那么该类中的方法都是静态的,该类中还有非静态方法,说明该类肯定会提供方法获取本类对象,而且该方法是静态的,,并且返回值类型是本类类型。
    由这个特点可以看出,该类使用了单例设计模式。
    该方法是 static Runtime  getRuntime();

类Process,public abstract class Process extends object
ProcessBuilder.start()和Runtime.exec方法创建一个本机进程,并返回Process子类的一个实例,该实例可用于控制进程并获得相关信息。Process类提供了执行从进程输入、执行输出到进程、等待进程完成、检查进程的退出状态以及销毁进程的方法。
import java.util.*;
class RuntimeDemo
{
        public static void main(String[] args) throws Exception
        {
                Runtime r = Runtime.getRuntime();
                Process p = r.exec("c:\\thunder.exe");//可以用此命令打开所有的可执行文件,要准确路径,
                Thread.sleep(4000);
                p.destroy();//杀死进程p,表示p一执行,立刻被杀
                //要注意的是斜线要两个,一个斜线表示转义字符

                Process p1 = r.exec("notepad.exe");//打开空记事本
                process p2 = r.exec("notepad.exe  SystemDemo.java");
                //用记事本打开SystemDemo.java


        }
        public static void sop(Object obj)
        {
                System.out.println(obj);
        }
}

3、Date 表示特定时间的某瞬间,精确到毫秒
import java.text.*;
class DateDemo
{
        public static  void main(String[] args)
        {
                Date d = new Date();
                System.out.println(d);
                //将模式封装到SimpleDateFormat对象中,
                SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日E hh:mm:ss");
                //调用format()方法,让模式格式化指定Date对象。
                String time = sdf.format();
                sop(time);
        }
        public static void sop(Object obj)
        {
                System.out.println(obj);
        }
}
4、Calendar类
class CalendarDemo
{
        public static void main(String[] args)
        {
                /*
                Date d = new Date();
                SimpleDateFormat sdf = new SimpleDateFormat("yyyy");
                String year =sdf.format();
                */
                Calendar c = Calendar.getInstance();
                sop(c.get(Calendar.YEAR));//获取年
                sop(c.get(Calendar.YEAR)+"年");
                sop((c.get(Calendar.MONTH)+1)+"月");
                sop(c.get(Calendar.DAY_OF_MONTH)+"日");
                sop("星期"+c.get(Calendar.DAY_OF_WEEK));

                Calendar c2 = Calendar.getInstance();
                c2.set(2012,3,3);//可以设置时间
                
                c2.add(Calendar.YEAR,4);//在当前时间下顺延四年。
                c2.add(Calendar.MONTH,-1);//减一个月,
                
        }
         public static void sop(Object obj)
        {
                System.out.println(obj);
        }
}

5、类Math,包含用于执行基本数学运算的方法。
        abs(double d):返回绝对值,float也可以
        static double ceil(double d):返回最小的(最接近负无穷大)double值,该值大于等于参数,并等于某个整数。直观的说:返回大于等于该参数的最小整数。
        floor(double d);小于等于参数的最大整数。
        round(floor d);四舍五入
        pow(a,b):幂的运算,a的b次方        
        public static double random():返回带+的double值,该值大于等于0.0且小于1.0,是一个伪随机数。
        类Random,里面有很多方法,可以获取随机double  或随机int
import java.util.*;
class Demo
{
        public static void main(String[] args)
        {
                Random r = new Random();
                double d = Math.ceil(12.36);//返回13
                double d1 = Math.floor(12.36);//返回12
                long  l = Math.round(12.34);
                double d2 = Math.pow(2,3);//2的3次方
                for(int x=0;x<10;x++)
                {
                        double d3 = Math.random();
                        int i = (int)(Math.random()*10+1);
                        int x = r.nextInt()+1
                }          
        }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值