Java Object类学习笔记



看下Api文档的一些说明

public class Object

Class Object is the root of the class hierarchy. Every class has Object as a superclass. All objects, including arrays, implement the methods of this class.

    • Since:
    • JDK1.0

从JDK1.0就已经存在的元老类,类结构的根,所有类的父类,所有类都实现了这个类的方法,包含arrays。特别强调了arrays。



Constructor Summary

Constructors  Constructor and Description

Object()

构造方法介绍。



Modifier and Type Method and Description

protected Object clone()

Creates and returns a copy of this object.

clone方法,返回一个object对象的copy

boolean equals(Object obj)

Indicates whether some other object is "equal to" this one.

equals方法,属于最原始的equals,判断一个对象是否equal to另一个对象

protected void finalize()

Called by the garbage collector on an object when garbage collection determines that there are no more references to the object.

当确认这个对象没有任何的引用时,对一个对象调用大名鼎鼎的GC,垃圾收集器,

Class<?> getClass()

Returns the runtime class of this Object.

返回这个对象的运行时class

int hashCode()

Returns a hash code value for the object.

大名鼎鼎的hashcode方法,返回一个对象的hash code,注意是个整形int

void notify()

Wakes up a single thread that is waiting on this object‘s monitor.

wakes up一个正在等待当前对象的监视线程,一般翻译为唤醒线程

void notifyAll()

Wakes up all threads that are waiting on this object‘s monitor.

wakes up所有正在等待当前对象的监视线程,

String toString()

Returns a string representation of the object.

大名鼎鼎的toString()方法,返回对象的string 表示

void wait()

Causes the current thread to wait until another thread invokes the notify() method or the notifyAll() method for this object.

大名鼎鼎的wait方法,面试经常会有人问他和sleep方法的区别。。,让当前线程等待,直到有别的线程调用该对象的notify()方法或者notifyAll()

void wait(long timeout)

Causes the current thread to wait until either another thread invokes the notify() method or the notifyAll() method for this object, or a specified amount of time has elapsed.

让当前线程等待另一个线程调用notify()方法或notifyAll()方法,或指定的时间运行。那么什么是指定时间运行?

void wait(long timeout, int nanos)

Causes the current thread to wait until another thread invokes the notify() method or the notifyAll() method for this object, or some other thread interrupts the current thread, or a certain amount of real time has elapsed.

让当前线程等待另一个线程调用notify()方法或notifyAll()方法,或者其他的线程中断当前线程,或指定的时间运行



Java Object类学习笔记

时间: 2024-12-11 02:11:23

Java Object类学习笔记的相关文章

java System类学习笔记

java 中 System 类 最常见到 System.out.println(); System类 定义为 public final class System extends Object{} 包含几个有用的类字段和方法,用了关键字 final 修饰,表示此类不能被其他类继承. 其构造方法为 private System{} (构造方法私有化,不能被外部实例化). System 中有三个属性:in,out,err: 1.private final static InputStream in=n

java Object类学习

/* * Copyright (c) 1994, 2010, Oracle and/or its affiliates. All rights reserved. * ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. * * * * * * * * * * * * * * * * * * * * */ package java.lang; /** * Class {@code Object} is the root

Java File类学习笔记4:自定义一个类,过滤指定扩展名的文件

自定义一个类,继承FileNameFilter类,获得某一目录下所有指定扩展名的文件. 方法一: /** * 说明: * 自定义FilterByJava类,过滤指定扩展名的文件 * */ import java.io.File; import java.io.FilenameFilter; public class FilterByJava implements FilenameFilter{ private String ext; public FilterByJava(String ext)

Java File类学习笔记2:File类对象及常用操作方法

一. 文件.相对路径与绝对路径 1.文件 (1)标准文件:就像图片,音乐文件等. (2)目录文件:也就是平常所说的文件夹. (3)虚拟内存文件:系统在运行程序时生成的临时性文件. 2.文件的路径 (1)相对路径:相对于某一文件的路径,形象地说是把两文件的绝对路径相同的部分砍掉,剩下的就是相对路径 如: A文件是"D:\MyDocuments\StudySample\src\cn\xmh", B文件是"D:\MyDocuments\StudySample\src\netjava

java 创建类 学习笔记

package com.ctgu.java.exer; public class TestPerson { } class Person{ //属性: String name; int age; boolean sex; //方法: public void eat(){ System.out.println("人吃饭"); } public void sleep(){ System.out.println("人睡觉"); } public String getNam

Java多线程技术学习笔记(二)

目录: 线程间的通信示例 等待唤醒机制 等待唤醒机制的优化 线程间通信经典问题:多生产者多消费者问题 多生产多消费问题的解决 JDK1.5之后的新加锁方式 多生产多消费问题的新解决办法 sleep和wait的区别 停止线程的方式 守护线程 线程的其他知识点 一.线程间的通信示例 返目录回 多个线程在处理同一资源,任务却不同. 假设有一堆货物,有一辆车把这批货物往仓库里面运,另外一辆车把前一辆车运进仓库的货物往外面运.这里货物就是同一资源,但是两辆车的任务却不同,一个是往里运,一个是往外运. 下面

java动态代理学习笔记

没事的时候翻看lang.reflect包下的代码,发现有两部分内容:涉及反射和动态代理. 很多地方都可以看到动态代理的影子,只是一直没仔细看下. 在学习之前,先提出几个问题,带着问题来看代码: 1.什么是动态代理? 2.为什么使用动态代理? 3.使用它有哪些好处? 4.哪些地方需要动态代理? --------------------分隔线----------------------------- 和动态代理有关的有两个类 1.interface InvocationHandler Object

java/android 设计模式学习笔记(9)---代理模式

这篇博客我们来介绍一下代理模式(Proxy Pattern),代理模式也成为委托模式,是一个非常重要的设计模式,不少设计模式也都会有代理模式的影子.代理在我们日常生活中也很常见,比如上网时连接的代理服务器地址,更比如我们平时租房子,将找房子的过程代理给中介等等,都是代理模式在日常生活中的使用例子. 代理模式中的代理对象能够连接任何事物:一个网络连接,一个占用很多内存的大对象,一个文件,或者是一些复制起来代价很高甚至根本不可能复制的一些资源.总之,代理是一个由客户端调用去访问幕后真正服务的包装对象

java/android 设计模式学习笔记(6)---适配器模式

这篇来介绍一下适配器模式(Adapter Pattern),适配器模式在开发中使用的频率也是很高的,像 ListView 和 RecyclerView 的 Adapter 等都是使用的适配器模式.在我们的实际生活中也有很多类似于适配器的例子,比如香港的插座和大陆的插座就是两种格式的,为了能够成功适配,一般会在中间加上一个电源适配器,形如: 这样就能够将原来不符合的现有系统和目标系统通过适配器成功连接. 说到底,适配器模式是将原来不兼容的两个类融合在一起,它有点类似于粘合剂,将不同的东西通过一种转