Java知识点总结
Java知识点总结1. 类的初始化顺序
父类静态变量(静态代码块)
子类静态变量(静态代码块)
父类成员变量
父类构造方法
子类成员变量
子类构造方法
2. final修饰符
修饰变量, 必须显示地赋初值,且赋初值后不能再赋值
被final修饰的实例变量必须显示地赋初值,且只能以下三种方式:
1. 定义时初始化
2. 在非静态初始化块中为final实例变量指定初始值
3. 在构造器中指定初始值
final修饰的静态变量只能在两个地方进行初始化
定义final类变量时指定初始值
在静态初始化块中为final类变量指定初始值
修饰方法,该方法不能被重写
修饰类,该类不能被继承
3. static修饰符
修饰变量,被static修饰的变量实质上就是全局变量,所有的类实例(对象),共享该变量;且该变量可以以类名.变量名的方式进行访问
修饰方法,该方法被称为静态方法,可直接使用类名.静态方法名进行调用,不需要实例化对象。
静态方法有以下特点:
只能访问static变量
只能调用其他static方法
不能使用this或者super关键字,因为 ...
为什么重写equals()方法时,要重写hashCode()方法
为什么重写equals()方法时,要重写hashCode()方法1. Object类中equals()方法源代码如下所示:123456/*** Object类中的equals()方法*/public boolean equals(Object obj) { return (this == obj); }
由以上源代码知,Object类中的equals()方法是直接使用==运算符来判断两个对象相等的。
引用类型变量使用==时,比较的是引用类型变量指向的对象的内存地址
基本类型使用==时,比较值
Objcect类中的hashCode源代码如下:
123456789101112131415161718192021222324252627282930313233343536/** * Returns a hash code value for the object. This method is * supported for the benefit of hash tables such as those provided by ...
equals()方法和hashCode()方法详解
equals()方法和hashCode()方法详解1. Object类中equals()方法源代码如下所示:123456/*** Object类中的equals()方法*/public boolean equals(Object obj) { return (this == obj); }
由以上源代码知,Object类中的equals()方法是直接使用==运算符来判断两个对象相等的。
引用类型变量使用==时,比较的是引用类型变量指向的对象的内存地址
基本类型使用==时,比较值
Objcect类中的hashCode源代码如下:
123456789101112131415161718192021222324252627282930313233343536/** * Returns a hash code value for the object. This method is * supported for the benefit of hash tables such as those provided by * & ...
Hello World
Welcome to Hexo! This is your very first post. Check documentation for more info. If you get any problems when using Hexo, you can find the answer in troubleshooting or you can ask me on GitHub.
Quick StartCreate a new post1$ hexo new "My New Post"
More info: Writing
Run server1$ hexo server
More info: Server
Generate static files1$ hexo generate
More info: Generating
Deploy to remote sites1$ hexo deploy
More info: Deployment
Vue项目中实现回车登录
Vue项目中实现回车登录12345678910created(){ let that = this; document.onkeypress = function(e) { var keycode = document.all ? event.keyCode : e.which; if (keycode == 13) {// 回车键对应值为13 that.login();// 登录方法名 return false; } }; }
The literal 10000000000 of type int is out of range
出现上述报错的主要原因是:
Java中默认整数为int类型,虽然图片中的数字未超过long类型的最大值,但由于默认整数为int类型,该数超过了int类型的最大值,所以报错;
解决方法如下:
在声明时,在数字的后面添加l或者L即可,建议添加L,更容易区别
unix时间戳转时间
123456String unixTimeStr= "1572251400";long s = Long.parseLong(unixTimeStr);s *= 1000; // 乘以1000,变成毫秒SimpleDateFormat t = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");String date = t.format(new Date(s));System.out.println(date); //2019-10-28 16:30:00
JS中this的指向
JS中this的指向
1. 以函数形式调用时,this是window
2. 以方法形式调用时,this是调用方法的对象
3. 以构造函数形式调用时,this是新建的那个对象
4. 使用call()和apply()调用时,this是指定的那个对象
在调用函数时,浏览器每次都会传递两个隐含的参数 1. 函数的上下文对象this 2. 封装实参的对象arguments – arguments是一个类数组对象(不是数组),它可以用过索引来操作数据,也可以获取长度 – 在调用函数时,我们所传递的实参都会保存在arguments中 – 即使在函数中不定义形参,也可以通过arguments来进行操作,只是相对而言麻烦一些
String类的常用方法
String类的常用方法
split(“reg”)将字符串以reg为分隔符进行分割,返回一个String类型的数组
replace(char oldChar, char newChar)替换字符串中的字符,返回一个新的String类型的变量
replaceAll(String regex,String replacement)基于正则表达式的替换,比如,可以通过replaceAll("\d", "*")把一个字符串所有的数字字符都换成星号;如果参数不是基于正则表达式的,那么效果和replace()相同
replaceFirst(String regex,String replacement)基于正则表达式的替换,只替换第一次出现的
trim()去除字符串首尾的空格,返回一个新的String类型的变量
equals()比较两个String类型变量的内容是否相同,区分大小写
equalsIgnoreCase()和equals()方法的作用相同,只是忽略大小写
substring(fromTndex,toIndex)字符串截取,包含包含起始 ...
Linux环境工作常用命令
Linux环境工作常用命令
cd / 进入根目录
mkdir dirName 创建文件夹
touch fileName 创建一个空文件
vi/vim fileName 编辑一个文件,如果文件不存在,则会新建该文件
mv fileName/dirName 剪切/修改 文件或者文件夹的名称
cp -r sourceDirPath targetDirPath 复制文件夹,会将子文件夹一并复制
tail -numf fileName 查看文件末尾num行,可以动态刷新文件,用于查看日志
&& 命令连接符 可以多条命令连接起来,从左到右执行
ps -ef|grep processName 查看某个进程的状态
kill -9 processId 根据进程ID杀进程
rm -rf fileName/dirName/dirPath 强制删除某个文件或者文件夹下所有内容,请慎用。如果不要强制,则去掉f
ssh userName@HostIP ssh远程连接
ls -l | grep "^-" | wc -l 查看文件夹下文件个数(不包括子文件夹) ...