zoukankan      html  css  js  c++  java
  • 2017-09-21

    Object 类:

    Object 类是所有类的父类,位于java.lang包中;

    数组是object类的子类;

    Object 和object [ ]的区别:

    Object :任何类型的参数都可以进行传进执行;

    object [ ]:对象型数组,只能接受保存引用类型的数组;

    Object类的常用方法:

    toString();   

    toString方法可以将任何一个对象转换成字符串返回,返回值的生成算法为:getClass().getName() + '@' + Integer.toHexString(hashCode())

     

      equals();
    Object类中的equals方法,用来比较两个引用的虚地址。当且仅当两个引用在物理上是同一个对象时,返回值为true,否则将返回false

    比较对象的虚地址,但是可以在类中被重写。

    :String类重写了,两个相同值的String对象相比较为   true;

        String str=new String(123);

        String str1=new String(123);

        System.out.println(str.equals(str1));à打印为true.

    ==

        比较的是内存中的虚地址

         String str=new String(123);

         String str1=new String(123);

         System.out.println(str==str1);à打印为false

     

      hashCode()

    获取对象的哈希码值,为16进制

     

    父类:

    public class Course {

    String title;

    int money;

    Course(){

    System.out.println("父类----------无参");

    }

    public Course(String title,int money){

    this.title = title;

    this.money = money;

    System.out.println("父类----------有参");

    }

    void teach(){

    System.out.println("父类----------teach");

    }

    }

    子类1

    public class courseSon1 extends Course{

    String title;

    int money;

    courseSon1(){

    System.out.println("子类1----------无参");

    }

    public courseSon1(String title,int money){

    this.title = title;

    this.money = money;

    System.out.println("子类1----------有参");

    }

    void teach(){

    System.out.println("子类1----------teach");

    }

    void student(){

    System.out.println("子类1----------student");

    }

    public String toString() {

    return "courseSon [title=" + title + ", money=" + money + "]";

    }

    public boolean equals(courseSon1 obj) {

    String str = this.title;

    if(str.equals(obj.title)&this.money==obj.money) {

    return true;

    }else {

    return false;

    }

    }

    }

    子类2

    public class courseson2 extends Course {

    String title;

    int money;

    courseson2(){

    System.out.println("子类2----------无参");

    }

    public courseson2(String title,int money){

    this.title = title;

    this.money = money;

    System.out.println("子类2----------有参");

    }

    void teach(){

    System.out.println("子类2----------teach");

    }

    void student(){

    System.out.println("子类2----------student");

    }

    public String toString() {

    return "courseSon [title=" + title + ", money=" + money + "]";

    }

    public boolean equals(courseson2 obj) {     //

    System.out.println(obj.title);

    String str = this.title;

    if(str.equals(obj.title)&this.money==obj.money) {

    return true;

    }else {

    return false;

    }

    }

    }

    public class Main {

    public static void main(String[] args) {

    // TODO Auto-generated method stub

    courseSon1 dddd = new courseSon1("数学",100);

    courseson2 aaaa = new courseson2("数学",100);

    courseson2 cccc = new courseson2("数学",100);

      

    System.out.println(dddd.equals(aaaa));     //如果没有重写equals方法,结果false

    System.out.println(dddd.equals(cccc));

    System.out.println(aaaa.equals(cccc));      

    fun(dddd);

    fun(aaaa);

    System.out.println(dddd.toString());     //因为子类没有返回值    结果是地址

    System.out.println(aaaa.toString());     

    }

    static void fun(Course cs) {

    cs.teach();

    }

    }

  • 相关阅读:
    POJ 3259 Wormholes【BellmanFord】
    POJ 2960 SNim【SG函数的应用】
    ZOJ 3578 Matrixdp水题
    HDU 2897 邂逅明下【bash博弈】
    BellmanFord 算法及其优化【转】
    【转】几个Java的网络爬虫
    thinkphp 反字符 去标签 自动加点 去换行 截取字符串 冰糖
    php 二维数组转 json文本 (jquery datagrid 数据格式) 冰糖
    PHP 汉字转拼音(首拼音,所有拼音) 冰糖
    设为首页与加入收藏 兼容firefox 冰糖
  • 原文地址:https://www.cnblogs.com/r123/p/7570235.html
Copyright © 2011-2022 走看看