自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

平头哥的技术博文

缓慢的行驶,但从未停止前进

  • 博客(11)
  • 收藏
  • 关注

原创 从 Int 到 Integer 对象,细细品来还是有不少东西

int 是 Java 八大原始类型之一,是 Java 语言中为数不多不是对象的东西,Integer 是 int 的包装类,里面使用了一个 int 类型的变量来存储数据,提供了一些整数之间的常用操作,常规性的介绍就这么一点,程序员不喜欢说,程序员就喜欢源码,我们还是来看源码吧 * @author Lee Boynton * @author Arthur van Hoff * @author...

2019-09-29 09:26:29 4607 1

原创 如何编写出高质量的 equals 和 hashcode 方法?

什么是 equals 和 hashcode 方法?这要从 Object 类开始说起,我们知道 Object 类是 Java 的超类,每个类都直接或者间接的继承了 Object 类,在 Object 中提供了 8 个基本的方法,equals 方法和 hashcode 方法就是其中的两个。equals 方法:Object 类中的 equals 方法用于检测一个对象是否等于另一个对象,在 Objec...

2019-09-27 09:46:38 6892 11

原创 模板方法模式,从网站登录开始说起

现在的互联网上,想必每个网站都有登录功能,拿我们技术人员常逛的技术网站CSDN、掘金、博客园等为例,它们都有登录功能,而且它们的登录流程都差不多,如果我们把这些网站的登录流程用代码模拟出来,该怎么弄呢?在模拟流程之前,先来分析这个登录流程,其实不管哪个网站,登录流程都是以下四步:1、跳转到登录页面2、输入用户名和密码3、点击登录按钮4、跳转到首页我们就照着这个流程来用代码来模拟网站...

2019-09-25 12:32:06 1838 1

原创 Java String 对象,你真的了解了吗?

String 对象的实现String对象是 Java 中使用最频繁的对象之一,所以 Java 公司也在不断的对String对象的实现进行优化,以便提升String对象的性能,看下面这张图,一起了解一下String对象的优化过程。1. 在 Java6 以及之前的版本中String对象是对 char 数组进行了封装实现的对象,主要有四个成员变量: char 数组、偏移量 offset、字符数量...

2019-09-24 10:13:30 12066 9

原创 装饰者模式,从吃黄焖鸡开始说起

黄焖鸡米饭最热卖的外卖之一,国人都喜欢吃,吃过黄焖鸡米饭的应该都知道,除了黄焖鸡米饭主体外,还可以添加各种配菜,如土豆、香菇、鹌鹑蛋、青菜等。如果需要你来设计一套黄焖鸡米饭结账系统,你该如何设计呢?前置条件:主体:黄焖鸡米饭 价格:16,配菜:土豆 价格:2、香菇 价格:2、鹌鹑蛋 价格:2、青菜 价格:1.5这还不简单?看我的,你随手就来了下面这段代码。public class Hua...

2019-09-23 11:57:03 7610 18

原创 做好以下四点,拒做 “ 空心 ” 程序员

01、注重原理性知识现在的互联网环境下,注重原理性知识学习的程序员越来越少,特别是在这种培训机构大爆炸的环境下,在网上你会经常看到类似三个月从入门到精通高并发、分布式的广告,我相信培训机构有这套技术的能力,但是我不相信一个初学者有这么好的接收能力。甚至某个培训机构的讲师里,有一个1997年出生的架构师,20岁出头就当上了架构师,真的是后生可畏呀。在我的思维里,架构师不是学出来的,架构师是...

2019-09-21 13:38:19 14964 44

原创 观察者模式,从公众号群发说起

每个人应该都订阅了不少微信公众号,那你有没有注意到微信公众号的消息呢?你订阅的公众号号主每发布一篇文章,你都会主动的接收到文章的推送,并不需要你点开每个订阅的公众号一一查看有没有更新,是不是觉得有点意思?感兴趣?那就接着往下看吧,因为接下来我们要模拟公众号群发的场景。要模拟公众号群发,首先需要简单的了解一下公众号的特点,对于公众号的特点,我总结了以下三点:每个公众号会有多名订阅者,公众号跟订...

2019-09-19 21:47:55 3170 6

原创 工厂模式,从第三方登录说起

现在的很多平台在登陆的时候,下面都会有一排选项,可以选择微信、QQ、微博账号等登陆,这些账号对平台来说都是第三方账号。第三方账号登陆是最近几年流行起来的,第三方账号登录一般都是基于OAuth2.0协议开发的。如果你不了解OAuth2.0协议,可以自行百度,也许会对你看这篇文章有所帮助。现在由于公司要给平台引入流量,为了降低注册门槛,让更多的人来使用你们的平台,领导决定在你们的平台上接入第三方账号...

2019-09-17 21:15:07 6882 9

原创 实现 Java 本地缓存,该从这几点开始

缓存,我相信大家对它一定不陌生,在项目中,缓存肯定是必不可少的。市面上有非常多的缓存工具,比如 Redis、Guava Cache 或者 EHcache。对于这些工具,我想大家肯定都非常熟悉,所以今天我们不聊它们,我们来聊一聊如何实现本地缓存。参考上面几种工具,要实现一个较好的本地缓存,平头哥认为要从以下三个方面开始。1、存储集合的选择实现本地缓存,存储容器肯定是 key/value 形式的数...

2019-09-11 09:12:02 9519 4

原创 HttpClient 三种 Http Basic Authentication 认证方式

Http Basic 简介HTTP 提供一个用于权限控制和认证的通用框架。最常用的 HTTP 认证方案是 HTTP Basic authentication。Http Basic 认证是一种用来允许网页浏览器或其他客户端程序在请求时提供用户名和口令形式的身份凭证的一种登录验证方式。优点基本认证的一个优点是基本上所有流行的网页浏览器都支持基本认证。基本认证很少在可公开访问的互联网网站上使用,...

2019-09-04 09:33:43 11227 1

原创 Java Builder 模式,你搞明白了么?

建造者模式定义建造者模式又叫生成器模式,它属于对象创建型模式,是将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。建造者模式是一步一步创建一个复杂的对象,它允许用户只通过指定复杂对象的类型和内容就可以构建它们,用户不需要知道内部的具体构建细节。下图是建造者模式的通用类图:在建造者模式中,有如下4种角色:Product:产品角色Builder:抽象建造者,定义产品...

2019-09-02 21:07:50 1734

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除