Xudong's Blog

Xudong's Blog

Stay naive && Keep exploring

Git Tips

作为强大的版本管理工具,基本的Git命令几乎是每个程序员都应该掌握的。在实际使用中,在紧急的关口,我们需要祭出这个神奇的时间机器,却突然根本不记得Git的不常见命令,这种尴尬时刻可能很多人都遇到过。查官方文档固然是一个好办法,不过下面的一些tips可能会帮你节省一些时间。

使用Git回溯到之前的commit

当你修改了一个配置文件,发现项目启动失败。当你重构了一些代码,发现程序出现bug。当你…。总是不管出现什么问题,你过去几个小时的努力可能要白费了,你想让一切恢复原状,那么就需要回溯到之前某一个正常的commit。

Redis的数据库与持久化

Redis服务器中的数据库

Redis服务器中有数据库这么一个概念。如果不指定具体的数量,默认会有16个数据库。

控制反转与依赖注入

什么是控制反转

控制反转(Inversion of Control, 缩写IoC),是一种面向对象的设计原则。从字面上理解,就是让控制权从类本身移交给其他类。那么是哪些控制权被反转了?答案是:“依赖对象的创建”这个控制权被移交了。移交给谁了?答案是:IoC容器。

这样做带来的好处就是降低代码之间的耦合度,业务代码的对于底层类的依赖被降低后,底层实现就可以更容易地改变,业务代码也更容易被复用。

Vim命令笔记

命令历史

以:和/开头的命令都有历史纪录,可以首先键入:或/然后按上下箭头来选择某个历史命令。

启动vim

Java中的equals和hashCode方法

equals()

java中处处是对象。所有类都继承自Object基类,Object基类拥有一个equals()方法。所以无论是继承自Object,还是override了基类的,所有类都拥有equals()方法。

1
2
3
public boolean equals(Object obj) {
return (this == obj);
}
Java中对象域的初始化

正确的初始化很重要

java中,一个类的域(或者说类的属性,类的数据成员)可以是基本数据类型,也可以是对象的引用。对象域如果没有被初始化,会被置为null,如果在置为null的引用上调用方法,我们就会得到一个运行时错误。
在恰当的时间,恰当的位置,正确地初始化对象域是很重要的。

初始化的位置

Java中的基本类型和自动装拆箱

基本数据类型及包装类

Java中的基本数据类型有byte、short、int、long、float、double、boolean、char。这几个类型都有其对应的包装类,表格中清晰展示了它们对应的包装类:

简单类型 二进制位数 封装类
boolean 1 Boolean
byte 8 Byte
char 16 Character
short 16 Short
int 32 Integer
long 64 Long
float 32 Float
doubel 64 Double
void Void
Hello, world. 使用Hexo搭建静态博客

前言

作为博客的第一篇文章,按照惯例那肯定是写一下这个博客怎么建起来的。

看到很多大神都用Hexo来搭建自己的博客,而且看起来都很简洁舒服,自己心里也早早地想尝试一把。
因为对于前端的接触确实不多,感觉搭博客这东西可能也有些费事,所以计划也一拖再拖。
直到昨天,几门课程的结课考试考完啦,就想趁着心情好,折腾一把,也就有了现在看到的这个页面。

avatar
Xudong Sun
FRIENDS
TPC Triplan