代码块和Java的API及Object类

Posted 邢昊天

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了代码块和Java的API及Object类相关的知识,希望对你有一定的参考价值。

代码块

 

 局部代码块

 

特点:

 

 ”{}”划定的代码区域,此时只需要关注作用域的不同即可

 

 方法和类都是以代码块的方式划定边界的

 

 

 

构造代码块

 

 优先于构造方法执行,构造代码块用于执行所有对象均需要的初始化动作

 

每创建一个对象均会执行一次构造代码块

 

 

 静态代码块

 

 

 

它优先于主方法执行、优先于构造代码块执行,当以任意形式第一次使用到该类时执行。

 

该类不管创建多少对象,静态代码块只执行一次。

 

可用于给静态变量赋值,用来给类进行初始化。

 

 

 

 Java的API及Object类

Java API 

 

 

Java APIAPI: Application(应用) Programming(程序) Interface(接口)

 

 

我们不需要关心这些类是如何实现的,只需要学习这些类如何使用即可

 

 

 

Object类概述

 

 

Object类是Java语言中的根类,即所有类的父类。它中描述的所有方法子类都可以使用。所有类在创建对象的时候,最终找的父类就是Object

 

Object类众多方法中,我们先学习equals方法与toString方法,其他方法后面课程中会陆续学到。

 

 

 equals方法

 

 

equals方法,用于比较两个对象是否相同,它其实就是使用两个对象的内存地址在比较。Object类中的equals方法内部使用的就是==比较运算符。

 

在开发中要比较两个对象是否相同,经常会根据对象中的属性值进行比较,也就是在开发经常需要子类重写equals方法根据对象的属性值进行比较

 

 

 

 

 

 

 

 当想用equals比较内容的时候必须先在子方法里重写才行 不然是按照object里的equals(只比较地址)比较

重写时 要用多态的向下取值 而且重写后的equals比较的是string类型。

 

在复写Object中的equals方法时,一定要注意public boolean equals(Object obj)的参数是Object类型,在调用对象的属性时,一定要进行类型转换,在转换之前必须进行类型判断

 

 

toString方法

 

toString方法返回该对象的字符串表示,其实该字符串内容就是对象的类型+@+内存地址值。

 

由于toString方法返回的结果是内存地址,而在开发中,经常需要按照对象的属性得到相应的字符串表现形式,因此也需要重写它。

 

 

 

 

 

以上是关于代码块和Java的API及Object类的主要内容,如果未能解决你的问题,请参考以下文章

Java 核心基础之static静态代码块和静态方法

(转) Java 静态代码块和非静态代码块

Java非静态代码块和静态代码块

Java之静态代码块和静态类静态导入

java-普通代码块构造代码块和静态代码块的区别。

Java的静态块和初始化块分别何时执行?有啥区别?