在JAVA中,所有的类都直接或间接继承了Java.lang.Object类Object是一个特殊的类,他是所有类的父类,是Java类层中的最高层类。当创建一个类时,他总是在继承,除非某个类已经指定要从其他类继承,否则他就是从java.lang.Object类继承而来,可见所有的类都源于java.lang.Object类,如String,Integer类都是继承Object类;除此之外,自定义的类也都继承于Object类。所有的类都是Object子类。
在Object类中主要包括clone(),finalize(),equals(),toString()等方法,其中常用的两个方法为equals()和toString()方法。由于所有的类都是Object类的子类,所以任何类都可以重写Object类中的方法。
在Object类中的getClass(),notify(),notifyAll(),wati()等方法不能被重写,因为这些方法被定义为final类型。
1.getClass()
返回对象执行时的class实例,然后使用此实例调用getName()方法可以取得类的名称。
getClass().getname();
2.toString()方法
toString()方法的功能是将一个对象返回为字符串形式,他会返回一个String实例。在实际应用中通常重写toString()方法,为对象提供一个特定的输出模式。当这个类转换为字符串或与字符串连接时,将自动调用重写的toString()方法。
public class demo{
public String toString() {//重写toString()方法
return "在"+getClass().getName();
}
public static void main(String[] args) {
System.out.println(new demo());
}
}
重写父类Object的toString()方法,定义一段字符串。单个用户打印类对象时,将自动调用toString()方法。
3.equals()方法
"=="比较的是两个对象引用是否相等
equals()判断两个字符串对象是否相等
blic class demo{
public static void mian(String[] args){
String s1=”123“;
String s2="123";
system.out.println(s1.equals(s2));//true
system.out.println(s1.equals(s2));//false
}
}
在自定义类中使用equals()方法默认实现是使用"=="运算符比较两个对象的引用地址,而不是比较对象的内容,所以要想真正做到比较两个对象的内容,需要自定义类中重写equals()方法。
此处类比字符串上的equals,此处是系统定义的字符串类
equals(String  otheString)
String a=new String("hello");
String b=new String("hello");
 boolean c=a.equals(b);
System.out.println(c);//true
V v1=new V();
V v2=new V();
system.out.println(V1.equals(2));//false 自定义类默认的是对比两个对象的引用地址
4.使用Object类接收任意对象的引用
package ceshi;
 
class Person {
 
}
public class Test {
public static void main(String[] args) {
      Object obj = new Person();//一个操作可能接收所有类的对象,那么Object作为参数最适合
Person per = (Person) obj;
}
}
 

10.Object类的更多相关文章

  1. 【JAVA基础】10 Object类

    1. Object类概述 是类层次结构的根类 每个类都使用 Object 作为超类 所有类都直接或者间接的继承自该类 所有对象(包括数组)都实现这个类的方法. 2. Object的构造方法 publi ...

  2. 开发工具、Object类(java基础知识十一)

    1.常见开发工具介绍 * A:操作系统自带的记事本软件 * B:高级记事本软件 * C:集成开发环境 IDE     * (Integrated Development Environment) *  ...

  3. 《Java从入门到失业》第五章:继承与多态(5.8-5.10):多态与Object类

    5.8多态 上面我们了解了向上转型,即一个对象变量可以引用本类及子类的对象实例,这种现象称为多态(polymorphism).多态究竟有什么用呢?我们先学习一个知识点. 5.8.1方法重写 前面我们学 ...

  4. 第10章 接口、继承与多态----Object类

    在Java中,所有的类都直接或间接继承了java.lang.Object类.Object类是比较特殊的类,它是所有类的父类,是Java类层中的最高层类.当创建一个类时,总是在继承,除非某个类已经指定要 ...

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

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

  6. JS面向对象(3) -- Object类,静态属性,闭包,私有属性, call和apply的使用,继承的三种实现方法

    相关链接: JS面向对象(1) -- 简介,入门,系统常用类,自定义类,constructor,typeof,instanceof,对象在内存中的表现形式 JS面向对象(2) -- this的使用,对 ...

  7. 基础学习day08---多态、简单工厂、Object类equals和toString

    一.多态 1.1.多态概念  定义:某一类事物的多种存在形态.        例:动物中猫,狗.    猫这个对象对应的类型是猫类型:猫 x = new 猫();    同时猫也是动物中的一种,也可以 ...

  8. 【Java基础之Object类(一)】Java中Object类中的所有方法(toString、equals、hashCode、clone、finalize、wait和notify等)详解(转载)

    java中的hashcode.equals和toString方法都是基类Object的方法. 首先说说toString方法,简单的总结了下API说明就是:返回该对象的字符串表示,信息应该是简明但易于读 ...

  9. C# - 系统类 - Object类

    Object类 ns:System 此类是所有.NET Framework中的类的基类 Type类就派生自Object类 C#提供了object关键字来表示一个类实例的类型 而无需使用Object作为 ...

随机推荐

  1. c++学习笔记3(动态内存分配)

    为了效率,需要按需去进行动态内存分配,在c中,可以用malloc去实现动态内存分配,而在c++中,则用new运算符去实现. 用法一:动态分配一个变量的存储空间 p=new T T为类型名 P则为T*类 ...

  2. 第二周PTA笔记 均等笔+旋转骰子+两个日期相差天数

    均等笔 n个人围成一圈,每人有ai支笔.每人可以向左右相邻的人传递笔,每人每次传递一支笔消耗的能量为1.求使所有人获得均等数量的笔的最小能量. 输入格式: 第一行一个整数n ,表示人的个数(30%的数 ...

  3. Qt分析:Qt中的两种定时器

    QTimer类的定时器 QTimer类定时器是QObject类定时器的扩展版或者说升级版,因为它可以提供更多的功能.比如说,它支持单次触发和多次触发. 使用QTimer类定时器的步骤: (1)创建一个 ...

  4. 问题 L: Yougth的最大化

    题目描述 Yougth现在有n个物品的重量和价值分别是Wi和Vi,你能帮他从中选出k个物品使得单位重量的价值最大吗? 输入 有多组测试数据 每组测试数据第一行有两个数n和k,接下来一行有n个数Wi和V ...

  5. Java 中的关键字

    Java 中有多少个关键字,有大小写之分吗? Java 中有 48 个关键字在使用 + 两个保留关键字未使用,共 50 个关键字. Java 关键字全部都由是小写组成. Java 中保留关键字分别是哪 ...

  6. selet 语句详解

    SELECT 语句的基本格式为:        SELECT 要查询的列名 FROM 表名字 WHERE 限制条件;        2.0 数学符号条件            SELECT 语句常常会 ...

  7. vue-ref指令

    $refs是数组

  8. Python+selenium定位一组元素,复选框

  9. 咸阳市大数据管理局使用Rainbond作为智慧城市底座的实践

    使用 Rainbond 作为智慧城市底座之后,给我们带来了成倍的运维效率提升. -- 咸阳市大数据管理局 熊礼智 咸阳市大数据管理局负责全市信息共享工作的组织领导,协调解决与政府信息共享有关的重大问题 ...

  10. CF1542E2 Abnormal Permutation Pairs (hard version)

    CF1542E2 Abnormal Permutation Pairs (hard version) good tea. 对于两个排列 \(p,q\),如果 \(p\) 的字典序小于 \(q\),则要 ...