System 类 (java.lang 包下)

  1. 该类中的方法和属性都是静态的.
  2. 常见方法
// 1, 获取当前时间的毫秒值
long currentTimeMillis(); // 2, 获取系统的属性信息
Properties getProperties(); // 备注: Properties 类存储的都是 String 类型的键和值
// 最好使用它自己的存储和取出方法来操作其中的元素 // 示例:
Properties prop = System.getProperties(); // 使用 Properties 特有方法获取该集合中键组成的 Set 集合
Set<String> nameSet = prop.stringPropertyNames(); for(String name : nameSet){
String value = prop.getProperty(name); System.out.println(name+":"+value);
} // 2.1 根据指定的键获取相应的属性. 例如获取系统的行分隔符:
System.getProperty("line.separator"); // 2.2 自己设置系统信息, 返回系统属性以前的值, 如果以前没有值, 返回 null
System.setProperty(String key, String value);

RunTime 类

  • 如果一个类没有构造方法摘要,那么

    • 说明一: 这个类不能创建对象
    • 说明二: 这个类的方法都是静态的.
    • 说明三: 如果这个类没有提供构造函数, 而这个类又具备一般非静态方法

      那么这个类百分之百至少有一个方法是静态的, 并返回本类对象.而这个类采用了单例设计模式.
  • Runtime 类采用了单例设计模式

Math 类

  • 提供了操作数学运算的方法,都是静态的
  • 常用方法:
1. ceil(); : 返回大于参数的最小整数

2. floor(); : 返回小于参数的最大整数

3. pow(a,b); : a 的 b 次方

4. double random(); // 返回一个伪随机数, 该值大于等于 0 且小于 1.0

Date 类 (java.util 包中)

  1. 构造函数:
// 将当前日期和时间封装成 Date 对象
Date date = new Date();
System.out.println(date); //Sun Sep 10 14:34:04 CST 2017 // 将指定毫秒值封装成 Date 对象
Date date1 = new Date(1505025276983l); // 毫秒值末尾不是数字1,而是表示 float 类型的字母 l
System.out.println(date1); //Sun Sep 10 14:34:36 CST 2017
  1. 日期对象和毫秒值之间的转换

    1. 毫秒值转换为日期对象:

      1. 通过 Date 对象的构造方法: new Date(timeMillis);
      2. 也可以通过 setTime(long time); 设置
      3. 转换原因: 为了可以通过 Date 对象的方法对该日期中的各个字段(年月日等)进行操作
    2. 日期对象转换为毫秒值
      1. getTime() 方法
      2. 转换原因: 为了可以通过具体的数值进行日期运算

DateFormat 类 (java.text 包下)

  • 用来格式化和解析日期字符串
  • 是抽象类, 不能直接实例化. 获取日期实例可以通过: DateFormat.getDateInstance();
  • 日期对象和日期格式的字符串之间转换:
// 日期对象转换为日期格式的字符串
// 获取当前日期
Date date = new Date(); // 通过静态工厂获取 DateFormat 对象, 即日期格式对象, 具备着默认的风格
DateFormat dateFormat = DateFormat.getDateInstance(); // 也可以使用 FULL, LONG, SHORT 等指定风格
DateFormat dateFormat1 = DateFormat.getDateInstance(DateFormat.FULL); // 可以使用 DateFormat 的子类 SimpleDateFormat 来自定义风格
DateFormat dateFormat2 = new SimpleDateFormat("yyyy---MM---dd"); // 调用 format() 方法, 格式化日期
String str_date = dateFormat.format(date);
String str_date1 = dateFormat1.format(date);
String str_date2 = dateFormat2.format(date); System.out.println(str_date); // 输出结果: Sep 10, 2017 System.out.println(str_date1); // 输出结果: Sunday, September 10, 2017 System.out.println(str_date2); // 输出结果: 2017---09---10 // 日期格式的字符串转换为日期对象
使用 DateFormat 类中的 parse() 方法, 注意有 ParseException 需要抛出 String str_date = "2012-4-23"; // 解析任意模式日期字符串
DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd"); Date date = dateFormat.parse(str_date); // 输出结果: 2012-4-23

Calendar 类 (java.util 包中)

  • 用来实现日期和时间字段之间转换
  • 是抽象类, 不能直接实例化. 获取日历实例可以通过: Calendar.getInstance()
// 获取任意 Calendar 对象的年月日
public static void showDate(Calendar c){ int year = c.get(Calendar.YEAR);
int month = c.get(Calendar.MONTH); // 月分从 0 开始, 因此求出的月份 +1 为实际月份
int day = c.get(Calendar.DAY_OF_MONTH); System.out.println(year+"年"+month+"月"+day+"日");
} public static void main(String[] args){ // 获取 Calendar 对象
Calendar c = Calendar.getInstance(); // 设置时间
c.set(2016,11,3); // 年月日的增加或减少
c.add(Calendar.MONTH,2); showDate(c); }

_参考资料_
- [JavaSE 基础视频(毕向东)](https://www.bilibili.com/video/av3124795/index_11.html#page=1)
- [JDK 1.6 中文文档](http://tool.oschina.net/apidocs/apidoc?api=jdk-zh)

Java 其他对象的 API的更多相关文章

  1. [原创]java WEB学习笔记81:Hibernate学习之路--- 对象关系映射文件(.hbm.xml):hibernate-mapping 节点,class节点,id节点(主键生成策略),property节点,在hibernate 中 java类型 与sql类型之间的对应关系,Java 时间和日期类型的映射,Java 大对象类型 的 映射 (了解),映射组成关系

    本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱 ...

  2. request对象常用API 获取请求参数的值 request应用 MVC设计模式

    1 request对象常用API   1)表示web浏览器向web服务端的请求   2)url表示访问web应用的完整路径:http://localhost:8080/day06/Demo1     ...

  3. JAVA File常用的API介绍

    package coreJava; import java.io.File; import java.io.IOException; public class FileDemo { public st ...

  4. Java 序列化 对象序列化和反序列化

    Java 序列化 对象序列化和反序列化 @author ixenos 对象序列化是什么 1.对象序列化就是把一个对象的状态转化成一个字节流. 我们可以把这样的字节流存储为一个文件,作为对这个对象的复制 ...

  5. 【Socket编程】Java中网络相关API的应用

    Java中网络相关API的应用 一.InetAddress类 InetAddress类用于标识网络上的硬件资源,表示互联网协议(IP)地址. InetAddress类没有构造方法,所以不能直接new出 ...

  6. Java高并发秒杀API之Service层

    Java高并发秒杀API之Service层 第1章 秒杀业务接口设计与实现 1.1service层开发之前的说明 开始Service层的编码之前,我们首先需要进行Dao层编码之后的思考:在Dao层我们 ...

  7. Java高并发秒杀API之业务分析与DAO层

    根据慕课网上关于java高并发秒杀API的课程讲解用maven+ssm+redis实现的一个秒杀系统 参考了codingXiaxw's blog,很详细:http://codingxiaxw.cn/2 ...

  8. Java之Date Time API (Java 8 新特性)

    Java 8 – Date Time API Java 8 comes with a much improved and much required change in the way date an ...

  9. java 复制对象 (克隆接口 与 序列化)

    关于java对象复制我们在编码过程经常会碰到将一个对象传递给另一个对象,java中对于基本型变量采用的是值传递,而对于对象比如bean传递时采用的是应用传递也就是地址传递,而很多时候对于对象传递我们也 ...

随机推荐

  1. Hibernate一级缓存和二级缓存具体解释

    一.一级缓存二级缓存的概念解释 (1)一级缓存就是Session级别的缓存,一个Session做了一个查询操作,它会把这个操作的结果放在一级缓存中.假设短时间内这个 session(一定要同一个ses ...

  2. redis命令_ZREM

    ZREM key member [member ...] 移除有序集 key 中的一个或多个成员,不存在的成员将被忽略. 当 key 存在但不是有序集类型时,返回一个错误. 在 Redis 2.4 版 ...

  3. emblog后台拿shell

    emlog版本:5.3.1 先本地弄好shell 新建一个文件夹,里面放shell,shell名称和文件名要一致.压缩为zip 然后在安装插件处上传. 成功后的路径content/plugins/te ...

  4. [J2EE]MyBatis HelloWorld

    一.MyBatis简单介绍 iBatis是apche的一个开源项目.2010年迁移到google code后改名为MyBatis,2013年前已到github.MyBatis是一个基于java的持久层 ...

  5. uinty实现玩家尾随鼠标位置平滑旋转角度

    首先我们要在场景中加入一个quad平面作为地板, 然后指定Layer为Floor,然后移除mesh renderer组件 然后加入脚本 脚本主要思想是从屏幕中心投出一条射线到地板, 然后获取相应坐标, ...

  6. requireJS的匿名模块和命名模块的区别和最佳实践

    requirejs是一个简单的javascript框架,支持模块化编码和模块的异步载入. 在requireJS中模块能够分为:匿名模块和命名模块这2种. requireJS定义一个匿名模块 defin ...

  7. TypeScript Visitor设计模式

    以下翻译脑袋的VBF项目,试试看TypeScript能否重写. class RegExpr {     Accept<T>(convert: Converter<T>) {   ...

  8. ios-A+B经典问题

    // // main.m // a+b // #import <Foundation/Foundation.h> #import "Calcultor.h" int m ...

  9. 微信小程序上传一或多张图片

    一.要点 1.选取图片 wx.chooseImage({ sizeType: [], // original 原图,compressed 压缩图,默认二者都有 sourceType: [], // a ...

  10. JXTA 2: 具有高性能、海量伸缩性的 P2P 网络

    这是来自developerWorks的一篇文章,地址是 https://www.ibm.com/developerworks/cn/java/j-jxta2/ ———————————————————— ...