黑马程序员—java基础学习--API其他对象
2014-11-12 15:19
495 查看
能够熟练的使用java,必须会懂得JavaAPI,而除了我们经常使用的这些API对象以外,还有一些开发中其他的一些对象,这些对象同样这占着很大一步分的比例,所以也应该熟练的应用一切别的对象,如我们常用的Syste.out就是System对象的方法,今天,我们一起走入JavaAPI中的其他对象。
*System
java.lang.System类中的方法和属性都是静态的:
out:标准输入,默认是控制台。
in:标准输入,默认是键盘。
描述系统一些信息。
获取系统属性信息:Properties getProperties( )
System类中的应用,代码如下:
import java.util.*;
class SystemDemo
{
public static void main(String[] args)
{
Properties prop = System.getProperties();
//因为Properties是HashTable的子类,也就是Map集合的一个子类对象,
//那么可以通过Map的方法取出集合中的元素
//该集合存储的都是字符串,没有泛型定义
/*
Iterator it = prop.keySet().iterator();
while(it.hasNext()){
String key = (String)it.next();
String value = (String)prop.get(key);
System.out.println(key+":"+value);
}
*/
//如何在系统中自定义一些信息呢?
System.setProperty("mykey","myvalue");
//获取所有属性信息:
for(Object obj : prop.keySet()){
String key = (String)obj;
String value = (String)prop.get(obj);
System.out.println(key+"::"+value);
}
//获取指定属性信息
String value = System.getProperty("os.name");
System.out.println("value="+value);
System.out.println(System.getProperty("v")); //当没有键时返回的为null
}
}
*Runtime
java.lang.Runtime类中并没有提供构造函数,说明不可以new对象,那么会直接想到该类中的方法是静态的。发现该类中还有非静态方法,说明该类肯定会提供方法获取奔雷对象,而且该方法是静态的,并且返回值类型是本类类型。该方法是 static Runtime getRuntime( )
由这个特点 可以看出该类使用了单例设计模式来完成。
Runtime类的应用如下:
class RuntimeDemo
{
public static void main(String[] args) throws Exception
{
//单例设计模式接受Runtime的本类对象
Runtime rt = Runtime.getRuntime();
//此方法可以代开程序,并关联本程序能打开的文件
Process p = rt.exec("notepad.exe SystemDemo.java");
Thread.sleep(4000);
//此方法杀掉子进程
p.destroy();
}
}
*Date
java.util.Date类表示特定的瞬间,精确到毫秒。
java.text.DateFormat 是日期/时间格式化子类的抽象类。
使用Date类和DateFormat类获取时间的代码如下:
import java.util.*;
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(d);
System.out.println("time="+time);
}
}
java.util.Calendar 类是一个抽象类,它为特定瞬间与一组诸如
日历字段之间的转换提供了一些方法。
计算机Month对应的数值为0-11,表示的是一月到十二月。Week对应的数值为1-7,表示的是星期日到星期六
import java.util.*;
import java.text.*;
class CalendarDemo
{
public static void main(String[] args)
{
Calendar c = Calendar.getInstance();
//可用此方法设置年月日
// c.set(2014,4,15);
//使日期添加或减少时间量
c.add(Calendar.YEAR,4);
printCalendar(c);
}
public static void printCalendar(Calendar c){
//使用查表法使问题简单
String[] mons ={"一月","二月","三月","四月",
"五月","六月","七月","八月",
"九月","十月","十一月","十二月"};
String[] weeks = {"","星期日","星期一","星期二","星期三","星期四","星期五","星期六"};
int index = c.get(Calendar.MONTH);
int index1 = c.get(Calendar.DAY_OF_WEEK);
System.out.println(c.get(Calendar.YEAR)+"年");
//此处代码有些累赘,容易出错。可用查表法解决
// System.out.println((c.get(Calendar.MONTH)+1)+"月");
System.out.println(mons[index]);
System.out.println(c.get(Calendar.DAY_OF_MONTH)+"日");
// System.out.println("星期"+c.get(Calendar.DAY_OF_WEEK));
System.out.println(weeks[index1]);
}
}
*Math
java.lang.Math类是一个数学的工具类。
import java.util.*;
class MathDemo
{
public static void main(String[] args)
{
double d1 = Math.ceil(12.34); //ceil返回的是大于指定数据的最小整数
double d2 = Math.floor(12.34); //floor返回的是小于指定数据的最大整数
int d3 = Math.round(12.34); //round返回的是此数值的四舍五入值
System.out.println(d1);
System.out.println(d2);
System.out.println(d3);
double d = Math.pow(2,3); //幂数运算
Systm.out.println(d);
for (int x=0; x<10 ; x++ )
{
int d = (int)Math.Random()*10+1; //Math.Random返回的是0-1之间的伪随机数
System.out.println(d);
}
//使用Random类返回1-10的随机数
Random r = new Random();
for (int x=0; x<10 ;x++ )
{
int d = r.nextInt(10)+1;
System.out.println(d);
}
}
}
*System
java.lang.System类中的方法和属性都是静态的:
out:标准输入,默认是控制台。
in:标准输入,默认是键盘。
描述系统一些信息。
获取系统属性信息:Properties getProperties( )
System类中的应用,代码如下:
import java.util.*;
class SystemDemo
{
public static void main(String[] args)
{
Properties prop = System.getProperties();
//因为Properties是HashTable的子类,也就是Map集合的一个子类对象,
//那么可以通过Map的方法取出集合中的元素
//该集合存储的都是字符串,没有泛型定义
/*
Iterator it = prop.keySet().iterator();
while(it.hasNext()){
String key = (String)it.next();
String value = (String)prop.get(key);
System.out.println(key+":"+value);
}
*/
//如何在系统中自定义一些信息呢?
System.setProperty("mykey","myvalue");
//获取所有属性信息:
for(Object obj : prop.keySet()){
String key = (String)obj;
String value = (String)prop.get(obj);
System.out.println(key+"::"+value);
}
//获取指定属性信息
String value = System.getProperty("os.name");
System.out.println("value="+value);
System.out.println(System.getProperty("v")); //当没有键时返回的为null
}
}
*Runtime
java.lang.Runtime类中并没有提供构造函数,说明不可以new对象,那么会直接想到该类中的方法是静态的。发现该类中还有非静态方法,说明该类肯定会提供方法获取奔雷对象,而且该方法是静态的,并且返回值类型是本类类型。该方法是 static Runtime getRuntime( )
由这个特点 可以看出该类使用了单例设计模式来完成。
Runtime类的应用如下:
class RuntimeDemo
{
public static void main(String[] args) throws Exception
{
//单例设计模式接受Runtime的本类对象
Runtime rt = Runtime.getRuntime();
//此方法可以代开程序,并关联本程序能打开的文件
Process p = rt.exec("notepad.exe SystemDemo.java");
Thread.sleep(4000);
//此方法杀掉子进程
p.destroy();
}
}
*Date
java.util.Date类表示特定的瞬间,精确到毫秒。
java.text.DateFormat 是日期/时间格式化子类的抽象类。
使用Date类和DateFormat类获取时间的代码如下:
import java.util.*;
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(d);
System.out.println("time="+time);
}
}
java.util.Calendar 类是一个抽象类,它为特定瞬间与一组诸如
YEAR、
MONTH、
DAY_OF_MONTH、
HOUR等
日历字段之间的转换提供了一些方法。
计算机Month对应的数值为0-11,表示的是一月到十二月。Week对应的数值为1-7,表示的是星期日到星期六
import java.util.*;
import java.text.*;
class CalendarDemo
{
public static void main(String[] args)
{
Calendar c = Calendar.getInstance();
//可用此方法设置年月日
// c.set(2014,4,15);
//使日期添加或减少时间量
c.add(Calendar.YEAR,4);
printCalendar(c);
}
public static void printCalendar(Calendar c){
//使用查表法使问题简单
String[] mons ={"一月","二月","三月","四月",
"五月","六月","七月","八月",
"九月","十月","十一月","十二月"};
String[] weeks = {"","星期日","星期一","星期二","星期三","星期四","星期五","星期六"};
int index = c.get(Calendar.MONTH);
int index1 = c.get(Calendar.DAY_OF_WEEK);
System.out.println(c.get(Calendar.YEAR)+"年");
//此处代码有些累赘,容易出错。可用查表法解决
// System.out.println((c.get(Calendar.MONTH)+1)+"月");
System.out.println(mons[index]);
System.out.println(c.get(Calendar.DAY_OF_MONTH)+"日");
// System.out.println("星期"+c.get(Calendar.DAY_OF_WEEK));
System.out.println(weeks[index1]);
}
}
*Math
java.lang.Math类是一个数学的工具类。
import java.util.*;
class MathDemo
{
public static void main(String[] args)
{
double d1 = Math.ceil(12.34); //ceil返回的是大于指定数据的最小整数
double d2 = Math.floor(12.34); //floor返回的是小于指定数据的最大整数
int d3 = Math.round(12.34); //round返回的是此数值的四舍五入值
System.out.println(d1);
System.out.println(d2);
System.out.println(d3);
double d = Math.pow(2,3); //幂数运算
Systm.out.println(d);
for (int x=0; x<10 ; x++ )
{
int d = (int)Math.Random()*10+1; //Math.Random返回的是0-1之间的伪随机数
System.out.println(d);
}
//使用Random类返回1-10的随机数
Random r = new Random();
for (int x=0; x<10 ;x++ )
{
int d = r.nextInt(10)+1;
System.out.println(d);
}
}
}
相关文章推荐
- 黑马程序员--Java基础学习(其他对象和IO流)第十八天
- 黑马程序员——JAVA基础学习之其他对象
- 黑马程序员——【Java基础】——泛型、Utilities工具类、其他对象API
- 黑马程序员 Java基础<十>---> IO流<3>-其他流对象简述
- 黑马程序员--Java基础学习之IO流之File类、Properties对象、打印流、序列流等
- 黑马程序员学习log第六篇基础知识:JAVA的面向对象之IO总结
- 黑马程序员学习log第五篇基础知识:JAVA的面向对象之集合总结
- 黑马程序员——Java基础——其他对象(Date)
- 黑马程序员---java基础之IO(File类及其他流对象)
- 黑马程序员—4—Java基础: 面向对象继承学习笔记和学习心得体会
- 黑马程序员--面向对象第二部分-内部类、异常--java学习日记6(基础知识)
- 黑马程序员—17—java基础:有关API的使用学习笔记和心得体会
- 黑马程序员_学习笔记:12) 其他API:java.lang.Runtime、java.util.Math、java.util.Date、java.util. Calendar
- 黑马程序员_JAVA学习日记_JAVA中API中Math和Random对象和继承1
- 黑马程序员——Java基础——其他对象(System)
- 黑马程序员-java基础学习03-面向对象基础
- 黑马程序员Java基础__其他对象
- 黑马程序员---java学习笔记之其他对象
- 黑马程序员__JAVA基础__其他对象
- 黑马程序员--面向对象第一部分--java学习日记4(基础知识)