zoukankan      html  css  js  c++  java
  • java 的API及Object类

    一 Java的API

      Java APIAPI: Application(应用) Programming(程序) Interface(接口)

      Java API就是JDK中提供给我们使用的类,这些类将底层的代码实现封装了起来

      在JDK安装目录下有个src.zip文件,这个文件解压缩后里面的内容是所有Java类的源文件。可以在其中查

    看相对应的类的源码。

      我们在每次查看类中的方法时,都打开源代码进行查看,这种方式过于麻烦。其实,我们可以通过查帮助

    文档的方式,来了解Java提供的API如何使用。如下图操作:查找Object

    二 Object类概述

      Object类是Java语言中的根类,即所有类的父类。它中描述的所有方法子类都可以使用。

    所有类在创建对象的时候,最终找的父类就是Object

    三 equals方法

      

      equals方法,用于比较两个对象是否相同,它其实就是使用两个对象的内存地址在比较。Object

    中的equals方法内部使用的就是==比较运算符。

      在开发中要比较两个对象是否相同,经常会根据对象中的属性值进行比较,也就是在开发经常需要

    子类重写equals方法根据对象的属性值进行比较。如下代码演示:

    /*
         描述人这个类,并定义功能根据年龄判断是否是同龄人
         由于要根据指定类的属性进行比较,这时只要覆盖Object中的equals方法
         在方法体中根据类的属性值进行比较
     */
    class Person extends Object{
        int age ;
        //复写父类的equals方法,实现自己的比较方式
        public boolean equals(Object obj) {
            //判断当前调用equals方法的对象和传递进来的对象是否是同一个
            if(this == obj){
                return true;
            }
            //判断传递进来的对象是否是Person类型
            if(!(obj instanceof Person)){
                return false;
            }
            //将obj向下转型为Perosn引用,访问其属性
            Person p = (Person)obj;
            return this.age == p.age;
        }
    }

    注意:在复写Object中的equals方法时,一定要注意public boolean equals(Object obj)的参数是Object类型,

    在调用对象的属性时,一定要进行类型转换,在转换之前必须进-行类型判断。

    四 toString方法

      toString方法返回该对象的字符串表示,其实该字符串内容就是对象的类型+@+内存地址值。

      由于toString方法返回的结果是内存地址,而在开发中,经常需要按照对象的属性得到相应的

    字符串表现形式,因此也需要重写它。

    class Person extends Object{
        int age ;
        //根据Person类的属性重写toString方法
        public String toString() {
            return "Person [age=" + age + "]";
        }
    }
  • 相关阅读:
    2017ccpc全国邀请赛(湖南湘潭) E. Partial Sum
    Codeforces Round #412 C. Success Rate (rated, Div. 2, base on VK Cup 2017 Round 3)
    2017 中国大学生程序设计竞赛 女生专场 Building Shops (hdu6024)
    51nod 1084 矩阵取数问题 V2
    Power收集
    红色的幻想乡
    Koishi Loves Segments
    Wood Processing
    整数对
    Room and Moor
  • 原文地址:https://www.cnblogs.com/jiejava/p/13279360.html
Copyright © 2011-2022 走看看