Java
javaer_007
学好java,为公司添砖"加瓦"!
展开
-
java源码
01 开篇词:为什么学习本专栏02 String、Long 源码解析和面试题03 Java 常用关键字理解04 Arrays、Collections、Objects 常用方法源码解析05 ArrayList 源码解析和设计思路06 LinkedList 源码解析07 List 源码会问哪些面试题08 HashMap 源码解析09 TreeMap 和 LinkedHashMap 核心...2020-06-28 14:50:05 · 247 阅读 · 0 评论 -
JVM的内存模型
1.程序计数器1.1. 什么是程序计数器?程序计数器是一块较小的内存空间,可以把它看作当前线程正在执行的字节码的行号指示器。也就是说,程序计数器里面记录的是当前线程正在执行的那一条字节码指令的地址。注:但是,如果当前线程正在执行的是一个本地方法,那么此时程序计数器为空。1.2. 程序计数器的作用字节码解释器通过改变程序计数器来依次读取指令,从而实现代码的流程控制在多线程的情况下,程...原创 2019-11-07 13:34:35 · 101 阅读 · 0 评论 -
Java类初始化顺序说明
一个类会有如下几个内容,类在初始化时他们是有顺序的静态属性:static 开头定义的属性静态方法块: static {} 圈起来的方法块静态方法:static 修饰的方法(被调用才生效)普通属性: 未带static定义的属性普通方法块: {} 圈起来的方法块普通方法: 普通方法(被调用才生效)构造方法: 类名相同的方法1.普通类public class LifeCycle {...原创 2019-10-28 10:54:02 · 122 阅读 · 0 评论 -
枚举
public enum SeasonEnum { SPRING("1","春天"), SUMMER("2","夏天"), AUTUMN("3","秋天"), WINTER("4","冬天"); SeasonEnum(String key,String value){ this.key = key; this.value = ...原创 2019-10-28 10:53:17 · 99 阅读 · 0 评论 -
3.面向对象(传智播客)
一.简介1.面向过程和面向对象面向过程:解决问题时关注动作,将动作用函数封装起来,然后再一一调用。面向对象:解决问题时关注对象,因为对象包含了特征和功能,找到对象即找到了功能。2.类类是用来描述对象的,是对对象共性内容的抽象。3.对象世界万物皆对象,对象是包含属性和方法的实例。如:小明 男 21岁 吃饭 打篮球小红 女 20岁 吃饭 跳舞4.类和对象的关系类是用来描述对象...原创 2019-10-05 16:58:39 · 172 阅读 · 0 评论 -
4.常用对象API(传智播客)
1.ObjectObject类是Java中其他所有类的祖先,没有Object类Java面向对象无从谈起。作为其他所有类的基类,Object具有哪些属性和行为,是Java语言设计背后的思维体现。Object类位于java.lang包中,java.lang包包含着Java最基础和核心的类,在编译时会自动导入。Object类没有定义属性,一共有13个方法,今天要介绍的是常见的4个非线程方法。pub...原创 2019-10-05 17:02:28 · 302 阅读 · 0 评论 -
5.异常(传智播客)
一.简介程序在运行过程中难免会遇到不正常的情况,比如内存溢出、堆栈溢出、类型转换错误等,java把这些问题用对象进行了封装,帮助我们定位问题。如控制台显示Exception in thread "main" java.lang.StackOverflowError at ErrorAndException.throwError(ErrorAndException.java:5) at Er...原创 2019-10-05 17:03:02 · 137 阅读 · 0 评论 -
6.集合(传智播客)
1.简介变量是用来存放数据的容器。对象是用来封装不同数据的。集合是用来存放对象的容器。2.集合体系List(有序,可重复)ArrayList优点: 底层数据结构是数组,查询快。缺点: 线程不安全,增删慢LinkedList优点: 底层数据结构是链表,增删快。缺点: 线程不安全,查询慢Set(唯一)HashSet底层数据结构是哈希表。(无序,唯一)如何来...原创 2019-10-05 17:04:12 · 192 阅读 · 0 评论 -
7.泛型(传智播客)
1.简介JDK5.0以后用泛型来接收类需要操作的引用数据类型,当引用的类型不确定时就使用泛型。泛型技术是给编译器使用的,编译器在检查完后,生成的.class文件中不带泛型,原因是泛型是jdk5.0以后出现的技术,类加载器不能识别,这叫做擦除。在运行过程中,又带有泛型,原因是类加载器获取.class字节码文件中运行时类中的数据类型,进行类强制转换,这叫做泛型补偿。2.泛型类public cl...原创 2019-10-06 13:47:58 · 109 阅读 · 0 评论 -
8.反射(传智播客)
1.简介能够动态获取对象的所有信息以及调用对象方法的功能称之为反射。2.使用案例public class Student { private String name; int age; public Student(String name, int age) { this.name = name; this.age = age; ...原创 2019-10-06 13:48:45 · 116 阅读 · 0 评论 -
9.IO流(传智播客)
1.编码public static void main(String[] args) throws UnsupportedEncodingException { String str = "慕课ABC"; byte [] bytes = str.getBytes("utf-8"); for(byte demo:bytes){ System.out.println(Integer.toH...原创 2019-10-06 13:49:26 · 192 阅读 · 0 评论 -
2.控制结构(传智播客)
1.顺序结构2.选择结构if elseswitchpublic static void main(String[] args) { System.out.println(fun(2));}private static String fun(int i) { String str = ""; switch(i){ case 1: ...原创 2019-10-05 16:57:33 · 118 阅读 · 0 评论 -
1.语言基础(传智播客)
1.关键字java赋予一些单词以java含义,这些单词只能为系统使用,称之为关键字。保留字是保留下来还未使用的关键字。2.标识符由字母、数字、下划线和$组成的可以用来表示变量名、方法名和类名的。开头不能是数字。不能含有标点符号和空格。不能是关键字。3.注释单行注释多行注释//这是一行单行注视/** * 这是一个多行注视 **/4.常量在程序运行过程中,值...原创 2019-10-05 16:55:39 · 92 阅读 · 0 评论