加深面向对象理解-Java常用类

计算机的本质是处理数据的
java又是一门面向对象的编程语言,在越往后面的学习,越多理解java,其实就是一直不断的在对象和对象之间、对象和类之间的关系理解。本质上也是数据类型和数据之间的理解;计算机处理数据,java中我们用的也是对象,用的是数据。

所以先简单了解几个常用类和里面的字段、构造方法、普通方法,通过在代码中的练习,慢慢的熟悉类的结构,类和对象、和方法的调用来达到我们想要的结果

  • 包装类
    1)Java为每种基本数据类型,提供对应的类,来描述对应基本数据类型的这一类事物
    2)好处:Integer类(字段,方法),在这个类中把int的位数,最大值, 最小值写成常量了;
    Integer类中提供了一些有用的方法:例如int-String之间的转换,和其它的数据类型的转换
    3)思考: 如下两个有什么区别
    Integer i1 = new Integer(123);
    Integer i1 = new Integer(“123”);
    //equals比较两个对象的值为true,但是是两个对象,地址值用==比较为false
    装箱 : 把一个基本数据类型的数据赋值给一个其对应的包装类的过程
    Integer m = new Integer(333);
    拆箱 : 把一个包装类对象赋值给一个其对应的基本数据类型的变量的过程
    int n = new Integer(999).intValue();
    自动装箱: Integer i1 = 123;//包装类Java提供特性,基本数据类型装入到包装类对象
    自动装箱拆箱只支持 基本数据类型和其对应的包装类
    double d = 123;
    Integer i = 123;
    Double dd = 123.0;
    Double ddd = 123; // 不行

Integer包装类的享元模式

简单来说就是正数中的几个包装类内部把常用 [-128,127] 的数据缓存起来了
浮点数不存在享元模式
在这里插入图片描述

  • System类
    1)
    static void arraycopy(Object src, int srcPos, Object dest, int destPos, int length)
    从指定源数组中复制一个数组,复制从指定的位置开始,到目标数组的指定位置结束。
    2)
    static void exit(int status)
    终止当前正在运行的 Java 虚拟机。
    终止当前正在运行的 Java 虚拟机。参数用作状态码;根据惯例,非 0 的状态码表示异常终止。

  • String类

“ABC”字符串是常量:值;它们的值在创建之后不能更改。字符串缓冲区支持可变的字符串。因为 String 对象是不可变的,所以可以共享。例如:String str = “abc”;
a.字符串常量在创建之后就不能更改了
a)字符串对象存在于堆中,存在了,字符串的值都不能改变了
i.分析:多个字符被解析放到字符串类中的一个私有字段private final char value[];
ii.字符串内部字符数组使用final修饰,并且是数组,数组长度固定,final修饰不能改变
代码中有一些方法:
在这里插入图片描述
打印结果:
在这里插入图片描述

  • Random类 (java.util)
    Random类中实现的随机算法是伪随机,也就是有规则的随机。在进行随机时,随机算法的起源数字称为种子数(seed),在种子数的基础上进行一定的变换,从而产生需要的随机数字。
    写一个方法,生成验证码:
    在这里插入图片描述

  • Date类
    util工具包下面的Date
    构造方法:
    Date(); 就表示当前系统时间对象
    Date(long date) 根据指定的毫秒值创建一个指定的时间
    SimpleDateFormat
    1)作用一: 把一个Date对象可以转成我们希望的一个结果样式(字符串)
    2)作用二: 也可以把一个字符串解析为一个Date对象
    3)学习重点就是如何调用上面的提到的两个功能方法,注意怎么给他格式
    格式:y年M月d日 H时:m分:s秒

Date parse(String text, ParsePosition pos) //方法
解析字符串的文本,生成 Date。

字符串解析为Date时:
当格式长度小于字符串长度时,能解析
当格式长度大于字符串长度时,不能解析
在这里插入图片描述
打印结果:
在这里插入图片描述

  • Calendar类
    Calendar 类是一个抽象类,它为特定瞬间与一组诸如 YEAR、MONTH、DAY_OF_MONTH、HOUR 等 日历字段之间的转换提供了一些方法,并为操作日历字段(例如获得下星期的日期)提供了一些方法。
    static Calendar getInstance() 使用默认时区和语言环境获得一个日历。
    //通过这个方法获得一个日历子类对象
    在这里插入图片描述
    打印结果:
    在这里插入图片描述
  • 异常类–Exception
    throws:抛出异常,处理异常
    throw:产生异常,创建异常
    常见异常:
    1.除数不能为零java.lang.ArithmeticException:类
    2.java.lang.NullPointerException
    3.java.lang.StringIndexOutOfBoundsException
    4.java.lang.ArrayIndexOutOfBoundsException
    5.类型转换异常java.lang.ClassCastException
    6.编译时异常java.text.ParseException
    throws和throw的区别:
    throws 处理异常,在方法头抛出异常
    throw 开发代码存在以外的情况,自己主动抛出异常[产生异常]
    在方法内部 throw new NullPointException();

自定义异常类:
根据可能的异常情况创建自己想要抛出的异常说明;自定义异常类继承 Execption
在这里插入图片描述
在这里插入图片描述
打印结果:
在这里插入图片描述
通过这几个简单的示例,多敲敲代码,也是为了更好的理解面向对象

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值