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

    1、java的APIAPI: Application(应用) Programming(程序) Interface(接口)

     (1)

    Java API就是JDK中提供给我们使用的类,这些类将底层的代码实现封装了起来,我们只要学会这些类如何使用即可。

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

    就是发给我们的这个应用:

     (2)object类:

    Object类是Java语言中的根类,即所有类的父类。它中描述的所有方法子类都可以使用。所有类在创建对象的时候,最终找的父类就是Object

     (3)equals方法

    --------------------equals方法,用于比较两个对象是否相同(使用两个对象的内存地址在比较)

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

     注意:

    复写Object中的equals方法时,一定要注意public boolean equals(Object obj)的参数是Object类型,在调用对象的属性时,一定要进行类型转换,在转换之前必须进行类型判断。

    (4)toString方法

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

    toString方法返回的结果是内存地址,而在开发中,经常需要按照对象的属性得到相应的字符串表现形式,因此也需要重写它。

     ========================================================================================================================================

    equals和toString 方法应用举例说明:

    public class Person {
        private String name;
        private int age;
        public String getName() {
            return name;
        }
        public void setName(String name) {
            this.name = name;
        }
        public int getAge() {
            return age;
        }
        public void setAge(int age) {
            this.age = age;
        }
        public Person(String name, int age) {
            super();
            this.name = name;
            this.age = age;
        }
        public boolean equals(Object obj) {
            if(obj==null){
                return false;
            }
            if(obj==this){
                return true;
            }
            if(obj instanceof Person){
                Person p=(Person)obj;
            return this.getAge()==p.getAge();
            }
            return false;
        }
        /*@Override
        public String toString() {
            String mes="姓名为"+this.getName()+"年龄为"+this.getAge();
            return mes;
        }*/
        @Override
        public String toString() {
            return "Person [name=" + name + ", age=" + age + "]";
        }
    }
    package demo06;
    
    import java.util.ArrayList;
    
    public class Test {
    
        public static void main(String[] args) {
        Person p1=new Person("小红",18);
        Person p2=new Person("小明",19);
        //Object类中的equals方法比较的是地址
        System.out.println(p1.equals(p2));
        System.out.println(p1.toString());//toString()方法可写可不写,是默认的
        ArrayList<String> list=new ArrayList<String>();
        System.out.println(list);
        
        }
    }
  • 相关阅读:
    hdu 4027 Can you answer these queries?
    hdu 4041 Eliminate Witches!
    hdu 4036 Rolling Hongshu
    pku 2828 Buy Tickets
    hdu 4016 Magic Bitwise And Operation
    pku2886 Who Gets the Most Candies?(线段树+反素数打表)
    hdu 4039 The Social Network
    hdu 4023 Game
    苹果官方指南:Cocoa框架(2)(非原创)
    cocos2d 中 CCNode and CCAction
  • 原文地址:https://www.cnblogs.com/yang1182/p/9708015.html
Copyright © 2011-2022 走看看