声明:本栏目所使用的素材都是凯哥学堂VIP学员所写,学员有权匿名,对文章有最终解释权;凯哥学堂旨在促进VIP学员互相学习的基础上公开笔记。
hashCode() 产生一个数字 作为一个标识 以后做比较,可以拿这个编号来做比较,有数字的比较方案,也有equals的比较方案,字符串也是可以用hashCode来作比较的
重写hashCode的写法:写几个私有属性,用get和set封装起来
写个测试类:只有内容一样,那运行出来的hashCode就一样,这也是一种比较的手段,两个对象的比较
单例设计模式:
设计模式:
设计模式是一种固定的思想,它是一种代码的技巧,只要是面向对象语言都可以用设计模式,比如说java,PHP,c#,等…设计模式总共有23个,可以分为三个部分:
1.创建型
2.结构型
3.行为型
架构模式:
设计模式叫战术,架构模式叫战略,设计模式比较小,架构模式要大于设计模式,它是专门用于我们系统里面的架构,结构里,缓存架构,分布式架构等…
单例(单态):
单例就是单个实例,就是说一个类只出一个对象。就是说我就要控制这个类只出一个对象,不要多个对象
单例分为两种模式:
1.懒汉式
优点:不提前加载资源
缺点:访问速度慢
慢脾气,就是说我什么时候用就什么时候创建对象
申请个属性,但是它没赋值,然后调方法准备拿对象的时候就判断一下对象有没有赋值,如果没有赋值就给你new一个,放在这个属性上,然后反馈出去,加入一个同步关键字的意思是synchronized,有了这个关键字你们就得排队访问了
2.饿汉式
优点:访问速度快
缺点:提前占用资源
急脾气,就是说一开始就把你这个对象给创建好来了
首先写个私有化构造器,防止别人new对象,然后写个静态对象属性,然后写个静态方法,把这个方法反馈出去,这是最简单的设计模式
想要获得这个对象,只能通过这个静态方法去获得
自创模式:
单例的用处是:
1.系统为了维护一个对象
2.一个类的对象访问次数很多,但不记录相关的数据值