Java 语言中Object 类和System 类详解


Posted in Java/Android onJuly 07, 2021

Object是java所有类的基类,是整个类继承结构的顶端,也是最抽象的一个类。大家天天都在使用toString()、equals()、hashCode()、waite()、notify()、getClass()等方法,或许都没有意识到是Object的方法,也没有去看Object还有哪些方法以及思考为什么这些方法要放到Object中。

一、Java Object类简介-所有类的超类

Object 是 Java 类库中的一个特殊类,也是所有类的父类。也就是说,J ava 允许把任何类型的对象赋给 Object 类型的变量 。当一个类被定义后,如果没有指定继承的父类,那么默认父类就是 Object 类。因此,以下两个类表示的含义是一样的。

public class MyClass{…}
等价于
public class MyClass extends Object {…}

1.1、常用方法

由于 Java 所有的类都是 Object 类的子类,所以任何 Java 对象都可以调用 Object 类的方法。常见的方法:

Object clone() 创建与该对象的类相同的新对象
boolean equals(Object) 比较两对象是否相等
void finalize() 当垃圾回收器确定不存在对该对象的更多引用时,对象垃圾回收器调用该方法
Class getClass() 返回一个对象运行时的实例类
int hashCode() 返回该对象的散列码值
void notify() 激活等待在该对象的监视器上的一个线程
void notifyAll() 激活等待在该对象的监视器上的全部线程
String toString() 返回该对象的字符串表示
void wait() 在其他线程调用此对象的 notify() 方法或 notifyAll() 方法前,导致当前线程等待

二、Java System类详解

System 类位于 java.lang 包,代表当前 Java 程序的运行平台,系统级的很多属性和控制方法都放置在该类的内部。由于该类的构造方法是 private 的,所以无法创建该类的对象,也就是无法实例化该类。

System 类提供了一些类变量和类方法,允许直接通过 System 类来调用这些类变量和类方法。

System 类有 3 个静态成员变量,分别是 PrintStream out、InputStream in 和 PrintStream err。

2.1、PrintStream out 标准输出流

此流已打开并准备接收输出数据。通常,此流对应于显示器输出或者由主机环境或用户指定的另一个输出目标。

例如,编写一行输出数据的典型方式是:

System.out.println(data);

其中,println 方法是属于流类 PrintStream 的方法,而不是 System 中的方法。

2.2、InputStream in 标准输入流

此流已打开并准备提供输入数据。通常,此流对应于键盘输入或者由主机环境或用户指定的另一个输入源。

2.3、PrintStream err 标准的错误输出流

其语法与 System.out 类似,不需要提供参数就可输出错误信息。也可以用来输出用户指定的其他信息,包括变量的值。

到此这篇关于Java 语言中Object 类和System 类详解的文章就介绍到这了,更多相关Java 语言Object 类和System 类内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Java/Android 相关文章推荐
解析Java中的static关键字
Jun 14 Java/Android
Spring Boot两种全局配置和两种注解的操作方法
Jun 29 Java/Android
ObjectMapper 如何忽略字段大小写
Jun 29 Java/Android
SpringBoot SpringEL表达式的使用
Jul 25 Java/Android
Spring Security中用JWT退出登录时遇到的坑
Oct 16 Java/Android
Java实现学生管理系统(IO版)
Feb 24 Java/Android
Java并发编程之原子性-Atomic的使用
Mar 16 Java/Android
RestTemplate如何通过HTTP Basic Auth认证示例说明
Mar 17 Java/Android
springboot入门 之profile设置方式
Apr 04 Java/Android
Java存储没有重复元素的数组
Apr 29 Java/Android
Android Canvas绘制文字横纵向对齐
Jun 05 Java/Android
Springboot集成kafka高级应用实战分享
Aug 14 Java/Android
新手初学Java List 接口
Jul 07 #Java/Android
Spring Boot 整合 Apache Dubbo的示例代码
Jul 04 #Java/Android
Java实现聊天机器人完善版
JavaGUI模仿QQ聊天功能完整版
JavaWeb Servlet实现网页登录功能
swagger如何返回map字段注释
Springboot配置suffix指定mvc视图的后缀方法
You might like
让你成为更出色的PHP开发者的10个技巧
2011/02/25 PHP
php导入excel文件到mysql数据库的方法
2015/01/14 PHP
php类中的$this,static,final,const,self这几个关键字使用方法
2015/12/14 PHP
PHP基于mcript扩展实现对称加密功能示例
2019/02/21 PHP
javascript显示隐藏层比较不错的方法分析
2008/09/30 Javascript
10个新的最有前途的JavaScript框架
2009/03/12 Javascript
Tips 带三角可关闭的文字提示
2010/10/06 Javascript
JSON.stringify 语法实例讲解
2012/03/14 Javascript
JS实现金额转换(将输入的阿拉伯数字)转换成中文的实现代码
2013/09/30 Javascript
Jquery创建层显示标题和内容且随鼠标移动而移动
2014/01/26 Javascript
JS清除选择内容的方法
2015/01/29 Javascript
angularjs学习笔记之三大模块(modal,controller,view)
2015/09/26 Javascript
jQuery拖动布局其结果保存到数据库
2015/10/09 Javascript
jQuery获取attr()与prop()属性值的方法及区别介绍
2016/07/06 Javascript
Javascript使用uploadify来实现多文件上传
2016/11/16 Javascript
javascript实现电脑和手机版样式切换
2017/11/10 Javascript
详解微信小程序工程化探索之webpack实战
2020/04/20 Javascript
Element-ui upload上传文件限制的解决方法
2021/01/22 Javascript
Python 条件判断的缩写方法
2008/09/06 Python
解决已经安装requests,却依然提示No module named requests问题
2018/05/18 Python
python中的常量和变量代码详解
2018/07/25 Python
对Python 除法负数取商的取整方式详解
2018/12/12 Python
python将字符串转换成json的方法小结
2019/07/09 Python
Ubuntu+python将nii图像保存成png格式
2019/07/18 Python
django 单表操作实例详解
2019/07/30 Python
Python中的相关分析correlation analysis的实现
2019/08/29 Python
python中def是做什么的
2020/06/10 Python
Python爬虫爬取有道实现翻译功能
2020/11/27 Python
html5 制作地图当前定位箭头的方法示例
2020/01/10 HTML / CSS
舒适的豪华鞋:Taryn Rose
2018/05/03 全球购物
爱岗敬业演讲稿范文
2014/01/14 职场文书
企业员工培训感言
2014/02/26 职场文书
群众路线教育查摆剖析材料
2014/10/10 职场文书
保密工作整改报告
2014/11/06 职场文书
幼儿教师辞职信
2015/02/27 职场文书
python基础学习之生成器与文件系统知识总结
2021/05/25 Python