Java学习之路(五):Object类和包装类

一、Object类

1. equals()

详情请看Java学习之路(三):不同结构的区别(更新中)中第八点

2.toString()

toString()的使用

  1. 当我们输出一个对象的引用时,实际上就是调用当前对象的toString()
  2. Object类中toString()的定义:
    public String toString(){
    return getClass().getName() + ‘@’ + Integer.toHexString(hashCode());
    }
  3. 像String、Date、File、包装类等都重写了Object类中的toString()方法,使得在调用对象的toString方法时,返回“实体内容”的信息

二、包装类(Wrapper)

1.概念

  • 针对八种基本数据类型定义相应的引用类型——包装类(封装类)
  • 有了类的特点,就可以调用类中的方法,Java才是真正的面向对象
基本数据类型 包装类 父类
byte Byte Number
short Short Number
int Integer Number
long Long Number
float Float Number
double Double Number
boolean Boolean
char Character

2. 基本数据类型、包装类和String三者之间的相互转换

在这里插入图片描述
① 基本数据类型 -->包装类:调用包装类的构造器
注意:布尔型的基本数据类型在转换为包装类时,在忽略大小写的情况下输入的值如果不是‘true’,则值为false
② 包装类–>基本数据类型:调用包装类的xxxValue()

JDK5.0新特性:自动装箱和拆箱

  1. 自动装箱:(基本类型转为包装类可以不需要调用包装类的构造器)
    int num = 10;
    Integer in1 = num;
  2. 自动拆箱:(包装类转换为基本数据类型可以不需要调用包装类的xxxValue()方法)
    Integer in1 = 100;
    int num = in1;

③ 基本数据类型、包装类–>String类型
方式一:使用连接符
int num1 = 10; String str = num1+"";
方式二:调用String的valueOf()方法
int num1 = 10; String str = String.valueOf(num1);

④ String类型–>基本数据类型、包装类:调用包装类的paresXxx()方法
String str1 = "123"; int num2 = Integer.parseInt(str1);