body, table{font-family: 微软雅黑; font-size: 10pt}
table{border-collapse: collapse; border: solid gray; border-width: 2px 0 2px 0;}
th{border: 1px solid gray; padding: 4px; background-color: #DDD;}
td{border: 1px solid gray; padding: 4px;}
tr:nth-child(2n){background-color: #f8f8f8;}

java.lang. 里面的类不用导入包
Object类的成员方法:
  public int hashCode();
//就是通过该类在堆上的地址,通过hash算法,算出一个数
  public final Class getClass();
//大写 Class 是一种类型;//返回该类的具体类型
public String toString();
public boolean equals(Object obj);
 protected void finalize();
 protected Object clone();

Student.java MyObjectDemo.java
package com.java.objectdemo;
//类不写默认的是继承Object类
public class Student implements Cloneable{  //这种没有任何成员或者抽象方法的接口,被称为 标记接口
        String name;
        int age;
        boolean gender;
        public Student(){       
        }
        public boolean equals(Object obj) {
                Student stu=(Student) obj;
                if(this.name!=null&&stu.name!=null){
                        if(this.name.equals(stu.name)&&this.age==stu.age&&this.gender==stu.gender )
                                return true;
                }
                        return false;
        }
    //protected  void finalize() {} //和c++的析构函数两回事
    //当垃圾回收器确定不存在对该对象的更多引用时,由对象的垃圾回收器调用此方法。
        public Student(String name,int age,boolean gender){
                this.name=name;
                this.age=age;
                this.gender=gender;
        }
        public Object clone() throws CloneNotSupportedException{
                return super.clone();
        }
        public String toString() {
                return "Student [name=" + name + ", age=" + age + ", gender=" + gender + "]";
        }
}
package com.java.objectdemo;
public class MyObjectDemo {
        public static void main(String[] args) {
                Student student=new Student();
                System.out .println(student.toString());   //对象的字符串表示,建议重写
                //默认这里会输出:com.java.objectdemo.Student@15db9742
                System.out.println(student);  //当我们使用一个对象引用直接输出的时候,系统默认是调用该类的 toString 方法,如果该类没有这个方法就直接调用基类Object的toString方法
                //com.java.objectdemo.Student@15db9742
                Student student1=new Student("meihao",24,true);
                System.out.println( "student1= "+student1); 
                //student1= com.java.objectdemo.Student@6d06d69c
                //这里调用toString方法 返回  getClass().getName() + '@' + Integer.toHexString(hashCode())
                System.out.println(student.hashCode());    //366712642
                Student student2=new Student();
                System.out.println(student2.hashCode());  //2018699554
                System.out.println(student2.getClass());     //class com.java.objectdemo.Student
                Class oClass;  //Class 是一个类,该类是用来代表一个student.class 字节码文件对象
                System.out.println("(student1==student2) = "+(student1==student2));  
//(student1==student2) = false
                //调用equals方法,比较的是地址值是不是一样的;this==object ?
                System.out.println("(student1.equals(student2)) = "+(student1.equals(student2)));   //(student1.equals(student2)) = false
                Student stu1=new Student("qw",20,true);
                Student stu2=new Student("qw",20,true);
                System.out.println("(stu1==stu2) = "+(stu1==stu2));  
//(stu1==stu2) = false
                System.out.println("(stu1==stu2) = "+(stu1.equals(stu2)));  
//(stu1==stu2) = true
                Student st1=new Student("张三",18,true);
                Student st2=new Student("张三丰",108,true);
                try{
                        Student st3=(Student)st2.clone();  //创建并返回对象的一个副本;深拷贝,新建一个相同内容对象
                        Student st4=st2;  //浅拷贝,只是多了一个链接
                }catch(CloneNotSupportedException e){
                        e.printStackTrace();
                }
        }
}

Java——object类的更多相关文章

  1. java Object 类

    Object o=new Object(); 其中有两个受保护的方法:             1.protected void finalize()             2.protected ...

  2. Java Object类及其equals方法

    基本概念: Object类位于java.lang包中,java.lang包包含着Java最基础和核心的类,在编译时会自动导入: Object类是所有Java类的祖先.每个类都使用 Object 作为超 ...

  3. [Java学习] Java Object类

    Object 类位于 java.lang 包中,是所有 Java 类的祖先,Java 中的每个类都由它扩展而来. 定义Java类时如果没有显示的指明父类,那么就默认继承了 Object 类.例如: 1 ...

  4. Java Object类的方法

    1. Java中所有的类都直接或者间接地继承自Object类.当没有显式地声名一个类的父类时,它会隐式地继承Object类. 2. Object类中定义了适合于任何Java对象的方法. String ...

  5. Java Object类的equals()方法

    所有类都从Object类中继承了equals方法,Object类中equals方法源代码如下: public boolean equals(Object obj)     {         retu ...

  6. Java Object类的toString()方法

    Java只要定义一个类,那么它都在继承,没有说明它在继承哪个类的时候,则默认继承java.lang.Object类,也就是说Object类是所有类的父类.看下面一段代码. public class O ...

  7. 160810、Java Object类

    Object 类位于 java.lang 包中,是所有 Java 类的祖先,Java 中的每个类都由它扩展而来. 定义Java类时如果没有显示的指明父类,那么就默认继承了 Object 类.例如: p ...

  8. 四. Java继承和多态10. Java Object类

    Object 类位于 java.lang 包中,是所有 Java 类的祖先,Java 中的每个类都由它扩展而来. 定义Java类时如果没有显示的指明父类,那么就默认继承了 Object 类.例如: p ...

  9. AJPFX关于Java Object类常用方法小总结

    java.lang.Object   java.lang包在使用的时候无需显示导入,编译时由编译器自动导入. Object类是类层次结构的根,Java中所有的类从根本上都继承自这个类. Object类 ...

随机推荐

  1. ExtJS使用入门

    extjs是基于 yui 由 jack slocum开发, sencha是他们的公司, sencha是由三个项目合并起来的开源项目: ExtJS, jqTouch, Raphael(拉斐尔, 圣经中的 ...

  2. RHEL7使用NAT方式上网

    1.首先,Windows7无法设置网络共享VMNet8的问题,是因为禁用了Firewall服务,设置为自动,启用即可:且需要启动VMWare的DHCP和NAT两个服务,这两个服务在我的机器上是关闭的, ...

  3. Cent OS 常用配置命令

    1.ifconfig   #查看网络接口状态 2.ifconfig –a  #查看主机所有接口的情况 3.ifconfig eth0 192.168.1.106 netmask 255.255.255 ...

  4. 【Coursera】Security Introduction -Ninth Week(2)

    对于公钥系统,我们现在已经有了保证它 Confidentially 的一种方法:SSL.SSL利用了公钥的概念. 那么 who we are talking to? Integrity Certifi ...

  5. 使用caffenet微调时的一些总结

    1,比较笨的方法生成图片列表(两类举例)data/myself/train 目录下 find -name cat.\*.jpg |cut -d '/' -f2-3 >train.txtsed - ...

  6. UVa 10382 喷水装置(贪心)

    https://vjudge.net/problem/UVA-10382 题意: 有一个长为l,宽为w的草坪,在其中心线不同位置有n个点状的喷水装置,喷水坐标为p,喷水半径为r.求喷到所有草坪的最少喷 ...

  7. mui --- 怎么获取百度地图定位功能

    <!doctype html> <html> <head> <meta charset="UTF-8"> <title> ...

  8. Java中带标签的break,continue

    首先不带标签的break,continue 就不介绍了.大家平时用的最多的也就是这样的情况了. 首先Java中没有goto,但是可以利用带标签的break, continue来实现类似的跳转. 首先来 ...

  9. C++ 重载new和delete

    下边代码对new和delete进行了简单的重载: #include <memory> #include <iostream> #include <cstddef> ...

  10. MongoDB(课时24 全文索引)

    3.6.3 全文索引 在一些信息管理平台上经常需要进行信息模糊查询,最早的时候是利用了某个字段上实现的模糊查询,但这个时候返回的信息并不会很准确,因为只能够查A字段或B字段,而在MongoDB里面实现 ...