1.包装类

1.1 基本类型包装类

基本类型包装类的作用

  将基本数据类型封装成对象的好处在于可以在对象中定义更多的功能方法操作该数据

  常用的操作之一:用于基本数据类型与字符串之间的转换

基本类型 包装类
byte Byte
short Short
int Integer
long Long
float Float
double Double
char Character
boolean Boolean

1.2 Integer

Integer类概述

  包装一个对象中的原始类型 int 的值

构造方法

方法名 说明
public Integer(int value) 根据 int 值创建 Integer 对象(过时)
public Integer(String s) 根据 String 值创建 Integer 对象(过时)
public static Integer valueOf(int i) 返回表示指定的 int 值的 Integer 实例
public static Integer valueOf(String s) 返回一个保存指定值的 Integer 对象 String

1.3 int和String类型的相互转换

int转换为String 转换方式

  方式一:直接在数字后加一个空字符串

  方式二:通过String类静态方法valueOf()

String转换为int 

  方式一:先将字符串数字转成Integer,再调用valueOf()方法

  方式二:通过Integer静态方法parseInt()进行转换

1.4 自动拆箱和自动装箱

自动装箱

  把基本数据类型转换为对应的包装类类型

自动拆箱

  把包装类类型转换为对应的基本数据类型

2.时间日期类

2.1 Date类

Date类概述

  Date 代表了一个特定的时间,精确到毫秒

Date类构造方法

方法名 说明
public Date() 分配一个 Date对象,并初始化,以便它代表它被分配的时间,精确到毫秒
public Date(long date) 分配一个 Date对象,并将其初始化为表示从标准基准时间起指定的毫秒数

2.2 Date类常用方法

方法名 说明
public long getTime() 获取的是日期对象从1970年1月1日 00:00:00到现在的毫秒值
public void setTime(long time) 设置时间,给的是毫秒值

2.3 SimpleDateFormat类

SimpleDateFormat类概述

  SimpleDateFormat是一个具体的类,用于以区域设置敏感的方式格式化和解析日期。

  我们重点学习日期格式化和解析

SimpleDateFormat类构造方法

方法名 说明
public SimpleDateFormat() 构造一个SimpleDateFormat,使用默认模式和日期格式
public SimpleDateFormat(String pattern) 构造一个SimpleDateFormat使用给定的模式和默认的日期格式

SimpleDateFormat类的常用方法

  格式化(从Date到String)

    public final String format(Date date):将日期格式化成日期/时间字符串

  解析(从String到Date)

    public Date parse(String source):从给定字符串的开始解析文本以生成日期

2.5 Calendar类

Calendar类概述

  Calendar 为特定瞬间与一组日历字段之间的转换提供了一些方法,并为操作日历字段提供了一些方法

  Calendar 提供了一个类方法 getInstance 用于获取这种类型的一般有用的对象。 该方法返回一个Calendar 对象。

Calendar类常用方法

方法名 说明
public int get(int field) 返回给定日历字段的值
public abstract void add(int field, int amount) 根据日历的规则,将指定的时间量添加或减去给定的日历字段
public final void set(int year,int month,int date) 设置当前日历的年月日

二月天案例

 1 public class CalendarTest {
2 public static void main(String[] args) {
3 //键盘录入任意的年份
4 Scanner sc = new Scanner(System.in);
5 System.out.println("请输入年:");
6 int year = sc.nextInt();
7 //设置日历对象的年、月、日
8 Calendar c = Calendar.getInstance();
9 c.set(year, 2, 1);
10 //3月1日往前推一天,就是2月的最后一天
11 c.add(Calendar.DATE, -1);
12 //获取这一天输出即可
13 int date = c.get(Calendar.DATE);
14 System.out.println(year + "年的2月份有" + date + "天");
15 }
16 }

3.异常

3.1 异常

异常的概述

  异常就是程序出现了不正常的情况

异常的体系结构

Throwable

  Error:严重的错误,我们无法处理

  Exception:程序本身可以处理的错误

    RuntimeException:在编译期不做检查,等到发现错误时由我们回来修改程序

    非RuntimeException:编译期就必须处理,否则无法通过编译

3.2 JVM默认处理异常的方式

如果程序出现了问题,我们没有做任何处理,最终JVM 会做默认的处理,处理方式有如下两个步骤:

  把异常的名称,错误原因及异常出现的位置等信息输出在了控制台

  程序停止执行

3.3 try-catch方式处理异常

定义格式

1 try {
2   可能出现异常的代码;
3 } catch(异常类名 变量名) {
4   异常的处理代码;
5 }

执行流程

  程序从 try 里面的代码开始执行

  出现异常,就会跳转到对应的 catch 里面去执行

  执行完毕之后,程序还可以继续往下执行

3.4 Throwable成员方法

常用方法

方法名 说明
public String getMessage() 返回此 throwable 的详细消息字符串
public String toString() 返回此可抛出的简短描述
public void printStackTrace() 把异常的错误信息输出在控制台

3.5 编译时异常和运行时异常的区别

编译时异常

  都是Exception类及其子类

  必须显示处理,否则程序就会发生错误,无法通过编译

运行时异常

  都是RuntimeException类及其子类

  无需显示处理,也可以和编译时异常一样处理

3.6 throws方式处理异常

定义格式

1 public void 方法() throws 异常类名 {
2 ……
3 }

注意事项

  这个throws格式是跟在方法的括号后面的

  编译时异常必须要进行处理,两种处理方案:try...catch …或者 throws,如果采用 throws 这种方案, 将来谁调用谁处理

  运行时异常可以不处理,出现问题后,需要我们回来修改代码

3.7 throws和throw的区别

Throws

  用在方法声明的后面,跟着的是异常类名

  表示抛出异常,由该方法的调用者来处理

  表示出现异常的一种可能,并不一定会出现这个异常

Throw

  用在方法体内,跟着的是异常类名

  表示抛出异常,由方法体内语句处理

  执行throw一定抛出了某种异常

3.8 自定义异常

自定义异常类

1 public class iNumberLargeException extends Exception {
2 public iNumberLargeException(){}
3
4 public iNumberLargeException(String message){
5 super(message);
6 }
7 }

检测类

1 public class Check {
2 public static void check(int sorce) throws iNumberLargeException {
3 if (sorce < 0 || sorce > 100) {
4 throw new iNumberLargeException("分数异常!");
5 } else {
6 System.out.println("正常");
7 }
8 }
9 }

测试类

import java.util.Scanner;

public class iExceptionDemo {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int sorce = sc.nextInt();
try {
Check.check(sorce);
} catch (iNumberLargeException e) {
e.printStackTrace();
}
}
}

JavaSE13-常用API&异常的更多相关文章

  1. node.js整理 02文件操作-常用API

    NodeJS不仅能做网络编程,而且能够操作文件. 拷贝 小文件拷贝 var fs = require('fs'); function copy(src, dst) { fs.writeFileSync ...

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

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

  3. kubernetes 客户端KubeClient使用及常用api

    KubeClient是kubernetes 的C#语言客户端简单易用,KubeClient是.NET Core(目标netstandard1.4)的可扩展Kubernetes API客户端, gith ...

  4. jedis常用API

    一.Redis Client介绍 1.1.简介 Jedis Client是Redis官网推荐的一个面向java客户端,库文件实现了对各类API进行封装调用. Jedis源码工程地址:https://g ...

  5. JsRender 前端渲染模板常用API学习

    JsRender 常用API 1. $.templates() $.templates()方法是用来注册或编译模板的,使用的情况有以下几种. 把html字符串编译编译成模板 获取使用script标签声 ...

  6. Map容器——TreeMap及常用API,Comparator和Comparable接口

    TreeMap及常用API ①   TreeMap类通过使用红黑树实现Map接口; ②   TreeMap提供按排序顺序存储键/值对的有效手段,同时允许快速检索; ③   不像散列(HashMap), ...

  7. 反射常用API

    反射所有功能都是通过class API来实现的 class常用API有: 1.class.GETINTERFACES():获得这个类实现的接口. 2.class.getMethods() Method ...

  8. gojs常用API (中文文档)

    常用API   操作类API   API 例子 应用场景 添加节点 myDiagram.model.addNodeData(node); var node = {}; node["key&q ...

  9. Netty的常用API(二)

    在使用Netty之前先介绍下Netty的常用API,对其有一个大概的了解. 一.EventLoop和EventLoopGroup EventLoop如同它的名字,它是一个无限循环(Loop),在循环中 ...

  10. Java 常用API (第二部分)

    常用api第二部分 Date 类 import java.util.Date; 时间原点: 1970-01-01 00:00:00(英国格林威治) 中国属于东八区, 会把时间增加 8 个小时: 197 ...

随机推荐

  1. Java中的Socket用法

    转发链接:https://www.cnblogs.com/zhanglei93/p/6217384.html (1)Java中的Socket用法 Java中的Socket分为普通的Socket和Nio ...

  2. burp使用

    只拦截特定网站数据包 我们以只拦截"www.baidu.com"为例 点击"Add"--布尔运算选择"And"--匹配类型选择"D ...

  3. 深度分析:面试阿里,字节99%会被问到Java类加载机制和类加载器

    1. 类加载机制 所谓类加载机制就是JVM虚拟机把Class文件加载到内存,并对数据进行校验,转换解析和初始化,形成虚拟机可以直接使用的Jav类型,即Java.lang.Class. 2. 类加载的过 ...

  4. springboot项目启动报错Communications link failure

    环境情况,MySQL版本如下: 报错情况如下(看上去是和数据库有关): com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communi ...

  5. 网络系列之GET与POST请求方式的区别

    作为一枚正在学习前端的 小萌新,如果下面哪里有写的不对的话,可以帮我指出来吗,谢谢 1.是基于什么前提的?如果什么前提都没有,不使用任何规范,只考虑语法和理论上的HTTP协议 那么GET和POST几乎 ...

  6. Spring 事件监听机制及原理分析

    简介 在JAVA体系中,有支持实现事件监听机制,在Spring 中也专门提供了一套事件机制的接口,方便我们实现.比如我们可以实现当用户注册后,给他发送一封邮件告诉他注册成功的一些信息,比如用户订阅的主 ...

  7. python+selenium下载和上传文件

    操作浏览器上传文件,先看代码 1 """ 2 * send_keys() 指定文件上传路径. 3 """ 4 from selenium i ...

  8. Java基础教程——变量

    变量 变量(variable)可以理解为一个"有名称的容器",用于装各种不同类型的数据.编程人员通过对变量的访问和修改,操作内存中的数据. 对变量的理解:https://www.c ...

  9. 跨域共享CORS详解及Gin配置跨域

    跨域简介 当两个域具有相同的协议(如http), 相同的端口(如80),相同的host,那么我们就可以认为它们是相同的域(协议,域名,端口都必须相同). 跨域就指着协议,域名,端口不一致,出于安全考虑 ...

  10. kafka入门之broker-集群管理

    依赖于zookeeper,broker向zk中注册的信息以json格式保存,其中包括: 1.listener_security_protocol_map:此值指定了该broker与外界通信所用的安全协 ...