JAVAEE第六篇 object类以及常用API

##学习内容

第一节 Object类

1.1 概述

java.lang.object 类是java语言的根类,即所有类的父类,在对象实例化的时候,最终找到的是此父类
如果一个类没有指定继承一个父类,那么系统则默认隐藏继承object类

class Myclass extends Object{
	//......
}

说明:Object类定义了如toString 、equals等多种方法,既然是所有类继承了Object类,那我们就能够重写这些方

1.2 toString

  • public String toString():返回该对象的字符串表达方式.
  • 重写toString方法
public class Person {
   public String name;
   public int age;

   Person(String name,int age){
       this.name = name;
       this.age = age;
   }
   @Override
   public String toString(){
       return ("name:"+name+"age:"+age);
   }
}

测试类

//System.out.println打印引用类型的话,调用的是引用类型的toString
public class ObjectDemo {
    public static void main(String[] args) {
        Person person = new Person("张三",10);
        System.out.println(person);//输出 name:张三age:10
    }
}

1.3 equals

  • public boolean equals(Object obj): 其他对象是否与此对象相等.
  • Obejct 类中默认是地址相同.如果对比值,需要重写此方法
public class Person {
    public String name;
    public int age;
    @Override
    public boolean equals(Object obj){
        //如果地址相同,返回true
        if (this == obj)
            return true;
        //如果传入的参数为null 或者比较的对象类型不一致返回false
        if (obj == null || this.getClass() != obj.getClass())
            return false;
        Person person = (Person)obj;
        //属性都相等,返回true
        return person.age == this.age && person.name.equals(this.name);
    }
 }

第二节 日期时间类

2.1 Date类

  • 概述
    java.util.Date表示特定的瞬间,精确到毫秒
  • 两个常用方法
    new Date():返回当前时间毫秒.
    public Long getTime: 把对象转换成时间毫秒值.

2.2 DateFormat

  • java.text.DateFormat 这个类用来格式化日期,可以在Date对象和字符串之前转换.
  • DateFormat是一个抽象类,子类 java.text.SimpleDateFormat继承它,通过构造方法返回一个格式化的日期对象.
  • DateFormat中有两个方法:format(时间) 和parse(时间字符串).
  • 格式:public SimpleDateFormat(String pattern) 返回pattern格式的日期对象.
  • 代码举例
    //日期转成字符串格式
    Date date = new Date();
    SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    String df = dateFormat.format(date);
    System.out.println(df);
    
    //字符串转成时间格式
    SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    String str = "2020-01-01 00:00:01";
    Date parse = dateFormat.parse(str);
    System.out.println(parse);
    

2.3 Calendar 类

概念

java.util.Calendar是日历类,用来获取各个时间属性的.

常用方法

Calendar类中提供很多成员常量,代表给定的日历字段:

字段值 含义
YEAR
MONTH 月(从0开始,可以+1使用)
DAY_OF_MONTH 月中的天(几号)
HOUR 时(12小时制)
HOUR_OF_DAY 时(24小时制)
MINUTE
SECOND
DAY_OF_WEEK 周中的天(周几,周日为1,可以-1使用)
  • get/set 方法:用来获取时间的属性

    public static void main(String[] args) {
        //实例化Calendar对象
        Calendar instance =  Calendar.getInstance();
        //获取年
        int year = instance.get(Calendar.YEAR);
        //获取月,从0开始-11.
        int month = instance.get(Calendar.MONTH);
        //获取日
        int day = instance.get(Calendar.DAY_OF_MONTH);
        //获取星期几,从星期日开始,1代表星期日
        int week = instance.get(Calendar.DAY_OF_WEEK);
        //设置年
        instance.set(Calendar.YEAR,2019);
        System.out.println("年:"+year+"月:"+month+"日:"+day+"星期:"+week);
    }
    
  • add方法

    //增加两天
    instance.add(Calendar.DAY_OF_MONTH,2);
    //减两天
    instance.add(Calendar.DAY_OF_MONTH,-2);
    
  • getTime方法:得到Date类型对象

     //实例化Calendar对象
     Calendar instance =  Calendar.getInstance();
     Date date = instance.getTime();
    

第三节 StringBuilder类

  • 概述
    为了解决String拼接带来生成多个对象的问题,它是字符串的一个缓冲器,默认16字符空间,超过会自动扩容.
    例子:
public static void main(String[] args) {
        StringBuilder stringBuilder = new StringBuilder("ab");
        stringBuilder.append("cd");
        System.out.println(stringBuilder);
    }

第四节 包装类

JAVA类型分为基本类型和引用类型,基本类型效率对快,但引用类型有更多的功能,所以我们引入包装类用来完善基本类型.

基本类型 对应的包装类(位于java.lang包中)
byte Byte
short Short
int Integer
long Long
float Float
double Double
char Character
boolean Boolean
  • 装箱:将基本类型转换成包装类型
  • 拆箱:将包装类型转换成对应的基本类型
  • 自动拆装箱:用来像基本类型一样定义的方式. 如Integer = 10;
发布了40 篇原创文章 · 获赞 4 · 访问量 6334

猜你喜欢

转载自blog.csdn.net/oFlying1/article/details/104471909