首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

Object详解

在Java的定义之中,除了Object之外,所有的实际上都存在继承关系,即:如果现在定义了一个,没有默认继承任何一个父的话,则默认将继承Object,以下两种类的最终定义效果是完全一样的。...对象比较:equals() 实际上对于equals()方法应该并不陌生了,这个方法在String中见过,String是Object的子类,所以String的equals()方法就是覆写了Object...中的equals()方法,在Object之中,默认的equals()方法实现比较的是两个对象的内存地址数值,但是并不符合于真正的对象比较需要。...Object是所有的父,那么Object可以接收所有的对象,但是在Java设计的时候,考虑到引用数据类型的特殊性,所以Object实际上是可以接收所有引用数据类型的数据,这就包括了数组、接口、...

49000

Java集合详解

1.java集合图 1.1 ? 1.2 ?...上述图中,实线边框的是实现,比如ArrayList,LinkedList,HashMap等,折线边框的是抽象,比如AbstractCollection,AbstractList,AbstractMap...还有一个特点就是抽象的使用。如果要自己实现一个集合,去实现那些抽象的接口会非常麻烦,工作量很大。...这个时候就可以使用抽象,这些抽象中给我们提供了许多现成的实现,我们只需要根据自己的需求重写一些方法或者添加一些方法就可以实现自己需要的集合,工作流昂大大降低。 1.3 ?...2.详解 2.1HashSet HashSet是Set接口的一个子类,主要的特点是:里面不能存放重复元素,而且采用散列的存储方法,所以没有顺序。

66810

Java 枚举 详解

比如一个季节有春、夏、秋、冬四个对象;一个星期有星期一到星期日七个对象。这些明显都是固定的,且有限个。...2、枚举和普通的区别   ①、使用 enum 定义的枚举默认继承 java.lang.Enum ,即枚举是不能再继承别的了。...而普通的一般父默认是 Object   ②、枚举的构造器只能使用 private 定义,而普通的还可以用 public 修饰   ③、枚举的所有实例必须在枚举中显示列出(,分隔   ;结尾)...首先我们看,以一个季节有春、夏、秋、冬四个对象为例:在 JDK 1.5以前是怎么表示的呢?    ...switch--case 的表达式(JDK 1.5以后) ②、如果枚举的对象只有一个,那么可以作为单例模式的实现

1.2K90

加载器详解

一旦一个被载入JVM了,同一个就不会被再次加载。 那么怎样才算是同一个?...在JAVA中一个用其全限定名(包名和名)作为其唯一标识,但是在JVM中,一个用其全限定名和其加载器作为其唯一标识。...上述三种加载器的层次关系如下: ? 注意:加载器的体系并不是“继承”体系,而是委派体系,大多数加载器首先会到自己的parent中查找或者资源,如果找不到才会到自己本地查找。...加载器的委托行为动机是为了避免相同的被加载多次。...每一个层次的加载器都是如此。 因此所有的加载请求都应该传递到最顶层的启动加载器中,只有到父加载器反馈自己无法完成这个加载请求(在它的搜索范围没有找到这个)时,子类加载器才会尝试自己去加载。

68350

Java常用(二)String详解

前言   在我们开发中经常会用到很多的常用的工具,这里做一个总结。他们有很多的方法都是我们经常要用到的。所以我们一定要把它好好的掌握起来!...一、String简介 1.1、String(字符串常量)概述   在API中是这样描述:     String 代表字符串。...成员变量可以知道String的值是final类型的,不能被改变的,所以只要一个值改变就会生成一个新的String类型对象,存储String数据也不一定从数组的第0个元素开始的,而是从offset所指的元素开始...我想大家应该就知道为什么String不可变了,String被final修饰,官方注释说明创建后不能被改变,但是为什么String要使用final修饰呢? ...当我们在传参的时候,使用不可变不需要去考虑谁可能会修改其内部的值,如果使用可变的话,可能需要每次记得重新拷贝出里面的值,性能会有一定的损失。

1K100
领券