第25天学习打卡

JAVA常用工具API(导学)

API的使用:

​ 使用步骤

​ 举例:

​ 顶层父类:Object

​ 控制台录入:Scanner

​ 字符串处理:String

​ 字符串处理:StringBuilder和StringBuffer

​ 日期获取:Date和Calender

​ 基本类型的包装类

根据步骤查找API文档使用对应功能:

查找类

查看模块名

查看包

查看构造方法

找到符合需要的方法

根据构造方法创建对象并使用

API简介

Application Programming Interface,应用程序编程接口,这里指的是API文档,通常叫Java文档,是Java中提供的类的使用说明书。

API文档:发挥面向对象思想,找到就Java提供的对象来实现功能,学习API文档就是学习Java中类的使用方法。

Java中组件的层次结构

模块(module)—>包(package)---->类或接口(class/interface)

image-20210202192115822

模块

module,自JAVA9起提供的一种新的java基础组件,在包(package)的基础上又进行了一层封装,是包的容器。

JavaSE Modules:

​ Java语言的核心类库,其下的模块名多以Java开头

JDK Modules:

​ Java开发工具相关内容,其下的模块名多以jdk开头

Object类

简介

类层次结构最顶层的基类,所有类都直接或间接的继承自Object类,所有,所有的类都是Object(对象)。

构造方法

Object():

​ 构造一个对象。所有子类对象初始化都会优先调用该方法。

成员方法

int hashCode():

​ 返回对象的哈希码值,该方法通过对象的地址值进行计算,不同对象的返回值一般不同。

Class<?>getClass():

​ 返回调用此方法对象的运行时类对象(调用者的字节码文件对象)

String toString():

​ 返回该对象的字符串表示

boolean equals():

​ 返回其它某个对象是否与此对象”相等“。默认情况下比较两个对象的引用,建议重写。

image-20210202194409657

package cn.itcast.demo01;
 /*
    Object类:
        概述:
           类层次结构最顶层的基类,所有类都直接或间接继承自Object类
           构造方法:
                 public Object()
           成员方法:
                 int hashCode(): 返回对象的哈希码值
                 Class(?)setClass():返回该调用的字节码文件对象
                 String toString():返回该对象的字符串表达式
                 boolean equals():比较两个对象是否相等
    */

public class Test {
    
    
    public static void main(String[] args) {
    
    

    }

}
//Person直接继承Object类   Student先继承Person后继承Object  就是间接继承
class  Person extends  Object{
    
    

}
class Student extends Person{
    
    

}

Object类

package cn.itcast.demo01;
 /*
    Object类:
        概述:
           类层次结构最顶层的基类,所有类都直接或间接继承自Object类
           构造方法:
                 public Object()
           成员方法:
                 int hashCode(): 返回对象的哈希码值
                 Class(?)setClass():返回该调用的字节码文件对象
                 String toString():返回该对象的字符串表达式
                 boolean equals():比较两个对象是否相等
           注意:
               java.lang包下的类可以直接调用,不用导包
    */

public class Test {
    
    
    public static void main(String[] args) {
    
    
        //非静态方法的调用方式: 通过  对象名.的形式调用
        //1.创建Object类型的对象
        Object obj1 = new Object();
        Object obj2 = new Object();

        //2.测试Object类中的成员方法
        //int hashCode(): 返回对象的哈希码值   不同对象的哈希码值一般不同
        int code1 = obj1.hashCode();
        int code2 = obj2.hashCode();
        System.out.println(code1);
        System.out.println(code2);
        System.out.println("======================");


        //Class(?)setClass():返回该调用的字节码文件对象   一个类可以创建多个对象,但只有一个字节码文件对象
        Class clazz1 = obj1.getClass();
        Class clazz2 = obj2.getClass();
        System.out.println(clazz1);
        System.out.println(clazz2);
        System.out.println("========================");


        //String toString():返回该对象的字符串表达式  默认打印的是地址值  但是不同对象的地址值肯定不同
        //地址值的组成    全类名 = 包名  +  类名(java.lang :包名;Object: 类名) 地址值的组成 :全类名 + @ + 该对象的哈希码的无符号十六进制形式
        String s1 = obj1.toString();
        String s2 = obj2.toString();
        System.out.println(s1);
        System.out.println(s2);
        System.out.println("==========================");

        //boolean equals():比较两个对象是否相等  默认比较的是地址值  无意义(不同对象的地址值肯定不同) 子类一般都会重写这个方法
        boolean b1 = obj1.equals(obj2);
        System.out.println(b1);
    }

}


猜你喜欢

转载自blog.csdn.net/doudoutj/article/details/113573419