黑马程序员--java基础--其他对象
------<a href="http://www.itheima.com" target="blank">Java培训、Android培训、iOS培训、.Net培训</a>、期待与您交流! -------
第一讲 System类
一、概述
1、System是描述系统一些信息的类,类中的属性和方法都是静态的。不能被实例化,没有提供构造函数。
2、字段摘要
out:标准输出流。默认是控制台。
in:标准输入流。默认是键盘。
二、方法
1、获取系统的属性信息:
Properties getProperties();
说明:
1)此方法返回的双列集合,即键值对;因为Properties是Hahstable的子类,也就是Map集合的一个子类对象,那么通过Map方法取出该集合中的元素。
2)该集合存储的都是字符串,没有泛型定义
2、获取指定属性信息:
String getProperty(Stringkey);
3、在系统内定义特有信息:
String setProperty(Stringkey,String value);
4、如何在jvm启动时,加载一些属性信息:
通过命令:java -D<name>=<value>可以设置特有的系统属性信息
package atheima;import java.util.Properties;public class SystemDemo {public static void main(String[] args) {Properties p1=System.getProperties();//获取当前的系统属性 //如何在系统中自定义一些特有的信息呢?System.setProperty("mykey", "myvalue");//获取指定属性信息String value1=System.getProperty("os.name");System.out.println("value1="+value1);for(Object obj:p1.keySet()){String value=(String) p1.get(obj);System.out.println(obj+"::"+value);}} }
第二讲 Runtime类
一、概述
1、每个java应用程序都有一个Runtime类实例,使用应用程序能与其中运行的环境相连接,应用程序不能创建自己的Runtime类的实例,是由系统底层自己创建的。
2、该类中并没有提供构造函数。说明不可以new对象。那么会直接想到该类中的方法都是静态的。查阅API文档发现,该类中还有非静态方法。说明该类肯定会提供了方法获取本来对象。而且该方法是静态的,并返回值类型是本类类型。 static RuntimegetRuntime();
3、由以上特点可以看出该类使用了单例设计模式完成。
二、方法
1、获取本类对象
static RuntimegetRuntime();
2、在单独的进程中执行指定字符串命令
Process exec(String command);
3、在Process中有一个杀掉子进程的方法,可将exec方法开启的进程结束
void destroy();
package atheima;import java.io.IOException;public class RuntimeDemo {public static void main(String[] args) throws Exception {Runtime r1=Runtime.getRuntime();//获取本类对象 //Process p1=r1.exec("D:\\暴风影音\\KuGou2012\\KuGou.exe");//执行酷狗音乐程序Process p1=r1.exec("notepad.exe RuntimeDemo.java");//记事本打开指定文件 //Thread.sleep(4000);//等待4秒//p1.destroy();//杀死进程 } }
第三讲 时间类
一、Date类
1、概述
Date类表示特定的瞬间,精确到毫秒。
java中的默认显示格式为:Mon Jun 10 22:35:21 CST2013
2、自定义格式
默认的格式不一定满足每个人的需求,那么就需要自定义格式化模式。因为Date类中的大部分方法已过时,所以只能找其子类来实现。子类DateFormat中有format方法可以实现,但是DateFormat是抽象类,不能实例化。但是其下有个SimpleDateFormat子类,可以定义时间模式。
具体步骤:
1)创建Date对象
2)将时间模式封装到SimpleDateFormat对象中
3)调用format方法让格式化模式指定Date对象
package atheima;import java.text.SimpleDateFormat; import java.util.Date;public class DateDemo {public static void main(String[] args) throws Exception {Date d1=new Date();System.out.println(d1);//打印的时间看不懂,希望有些格式//将模式封装到SimpleDateFormat对象中SimpleDateFormat sdf=new SimpleDateFormat("yyyy年MM月dd日 hh时:mm分:ss秒 E");//调用format方法让模式格式化指定Date对象。String time=sdf.format(d1);System.out.println("time="+time);} }
二、Carendar类
1、概述:
1)Calendar是一个抽象类。
2)Calendar可以对年月日等时间进行获取。Calendar c1=Calendar.getInstance();//获得日历
2、方法:
2.1、基本获取时间
1)获取年份:Calendar.YEAR
2)获取月份:Calendar.MONTH
3)获取日期:Calendar.DAY_OF_MONTH
4)获取星期:Calendar.DAY_OF_WEEK
5)获取小时:Calendar.HOUR_OF_DAY
6)获取分钟:Calendar.MINUTE
7)获取秒数:Calendar.SECOND
2.2、设置时间:
1)根据日历的规则,为给定的日历字段添加或减去指定的时间量:
void add(int field,int amount);
2)获取指定的日历字段对应的时间值:
int get(int field);
3)将给定日历字段对应的时间值设置为给定值:
void set(int field,int value);
设置日历字段 YEAR、MONTH和DAY_OF_MONTH的值:
void set(int year,int month,int date);
package atheima; import java.util.Calendar; public class CalendarDemo2 {public static void main(String[] args){Calendar c1=Calendar.getInstance();//获得日历//add(int field, int amount) //根据日历的规则,为给定的日历字段添加或减去指定的时间量。//c1.add(Calendar.MONTH, 4);//月份加四个月c1.add(Calendar.DAY_OF_WEEK, -3);//天数减去3天 printCalendar(c1);}public static void printCalendar(Calendar c){String[]mon={"一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"};String[]weeks={"","星期日","星期一","星期二","星期三","星期四","星期五","星期六"};int index=c.get(Calendar.MONTH);int Index1=c.get(Calendar.DAY_OF_WEEK);sop(c.get(Calendar.YEAR)+"年");//2015年 sop(mon[index]);//五月sop(weeks[Index1]);//星期六 }public static void sop(Object obj){System.out.println(obj);} }
第四讲 Math类
一、概述
Math类包含用于执行基本数学运算的方法,如初等指数、对数、平方根和三角函数。该类全为静态方法。
二、方法
1、double ceil(double d);//返回大于指定数据的最小整数12.34---》13
2、double floor(double d);//返回小于指定数据的最大整数12.34----》12
3、double pow(double a,double b);//返回a的b次方
4、long round(double b);//返回b四舍五入的值
5、double random();//返回正号的double值,是一个大于等于0.0且小于1.0的随机数
三、Random类
这是java.util中的一个单独的类,该类对象用于获取随机数。与Math中的random方法是一样的,不过这个类有自身的方法,可以将相应的随机数强转为指定基本数据类型。
如:intnextInt(int n);//返回一个伪随机数,它是取自此随机数生成器序列的、在 0(包括)和指定值(不包括)之间均匀分布的 int值。
package atheima; /* 练习:给定一个小数,保留该小数的后n位。 1、先把给定小数乘以10的n次方,四舍五入保留整数部分 2、再把该整数除以10的n次方 */ class MathTest { public static void main(String[] args) { double d=retention(13.6572,2); System.out.println("d="+d); } //保留小数位方法 public static double retention(double d,int n) { double d1=d*Math.pow(10,n);//先将要保留的小数位变为整数 long l=Math.round(d1);//将小数四舍五入 return l/Math.pow(10,n);//返回保留了指定小数位的小数 } }
转载于:https://www.cnblogs.com/Hanxia/p/4541035.html
黑马程序员--java基础--其他对象相关推荐
- 黑马 程序员——Java基础---IO(下)
黑马程序员--Java基础---IO(下) ------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------ 一.概述 Java除了基本的字节流.字符流之外,还提供 ...
- 黑马 程序员——Java基础---流程控制
黑马程序员--Java基础---流程控制 ------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------ 一.概述 Java提供了两种基本的流程控制结构:分支结构 ...
- 黑马程序员--Java基础加强篇
开发工具使用 --------------------------------------------------------------------------------------------- ...
- 黑马程序员-Java基础:面向对象(上)
------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- 一.面向对象概述 当需求单一,或者简单时,我们一步一步去操作没问题,并且效率也挺高.可随着需求的 ...
- 黑马程序员-Java基础知识预备之Java流程控制与数组
-------- android培训.java培训.期待与您交流!---------- 本博文涉及的主要内容如下: if语句 switch语句 循环结构 循环结构的控制 数组类型 数组在内存中的运行机 ...
- 黑马程序员—java基础总结1
------- android培训.java培训.期待与您交流! ---------- 一:java概述: 1991 年Sun公司的James Gosling等人开始开发名称为 Oak 的语言,希望用 ...
- 黑马程序员 — JAVA基础 — 内部类、异常
-----------android培训.java培训.java学习型技术博客.期待与您交流!------------ 一.内部类 1.概念: 把类定义在另一个类的内部,该类就被称为内部类. Eg:把 ...
- 黑马程序员-Java基础加强之枚举
--------- android培训.java培训.期待与您交流!---------- 一.为什么要有枚举? 问题:要定义季节.星期向或性别的变量,该怎么定义?假设用1-4分别表示春.夏.秋.冬,但 ...
- 黑马程序员-Java基础:设计模式总结
--Java培训.Android培训.iOS培训..Net培训.期待与您交流! -- Java基础部分设计模式 一.设计模式概述 设计模式(Design pattern)是一套被反复使用.多数人知晓的 ...
最新文章
- 一堆乱七八糟绝不正经的排序算法
- Web前端工程师工作前 VS 工作后
- Linux SKB结构体中各个长度字段的含义(len, data_len, headlen, pagelen)
- 统计学习导论 基于R应用——作业 3
- python基础——递归函数
- 中石油训练赛 - Match Matching(完全背包)
- 探测器反向偏压_近红外和可见光双模有机光电探测器
- 游戏会记录某个api的调用_专家坐诊丨老出BUG怎么办?游戏服务器常见问题的解决方法分享...
- IE8的 JS 引擎如此不堪(二) - 解决方案
- ckrule规则编辑器在wpf中的使用
- 大数据之-Hadoop3.x_Yarn_基础架构---大数据之hadoop3.x工作笔记0141
- iOS开发-获取View截图图像
- (10)Spring框架----AOP面向切面编程的实现原理
- 计算机文化基础(高职高专版 第十一版)第七章 答案
- html 整体架构框架 源码,上 中 下结构网页模板布局框架代码
- gwas snp 和_GWAS | 原理和流程 | 全基因组关联分析
- 深入理解什么是Beta分布
- 揭秘TVS管在电压与电流中的奥秘
- MOSFET管(MOS管)基础
- android 音频输出手动切换到听筒播放,Android-通过听筒播放音频
热门文章
- 关于python的一些好的书籍推荐-推荐几本关于的Python好书
- python爬虫框架排行榜-8个最高效的Python爬虫框架,你用过几个?
- python提高办公效率-用Python的这3个优点,让工作效率提升一倍
- 学好python工资一般多少钱-Python工资一般是多少 看完吓你一跳
- python零基础难学吗-如何从零开始学习Python,零基础学python难吗
- python序列类型-什么是序列,Python序列详解(包括序列类型和常用操作)
- python从1到n出现了多少个1-【算法21】从1到n的正数中1的出现次数
- python怎么写文件-python 头文件怎么写
- python2版本和python3版本-python2和python3哪个版本新
- python中常见的流程结构-常见数据结构的 Python 实现(建议收藏)