- 博客(32)
- 收藏
- 关注
原创 JAVA面试总结
一、Java基础解释下什么是面向对象?面向对象和面向过程的区别?面向过程:面向过程侧重整个问题的解决步骤,着眼局部或者具体。面向对象:面向对象侧重具体的功能,让某个对象具有这样的功能。更加侧重于整体。面向对象的三大特性?分别解释下?一:封装对于封装而言,一个对象它所封装的是自己的属性和方法,所以他是不需要依赖其他对象就可以完成自己的操作。封装的三大好处:1、良好的封装能够减少耦...
2020-05-02 07:53:22
660
1
原创 HashMap加载因子及转红黑树探究
HashMap加载因子及转红黑树探究HashMap探究(二)今天我们来探究下:负载因子为什么是0.75?为什么红黑树扩容是当链表长度>=8时扩容?Java7的hashmap扩容死锁演示与环链形成分析?负载因子为什么是0.75?我们先来看看源码:在构造函数中未指定时使用的加载因子 /** * The load factor used when none specifi...
2020-03-03 02:18:15
2021
原创 HashMap源码分析
数据结构JDK1.7:数组+链表JDK1.8:hash表=数组+链表+红黑树什么是哈希表?哈希表(Hash table,也叫散列表),是根据关键码值(Key value)而直接进行访问的数据结构。也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。这个映射函数叫做散列函数,存放记录的数组叫做散列表。HashMap添加元素分析在HashMap中,当添加元素时,会...
2020-03-03 02:14:51
730
转载 反射
反射(非常重要)反射看了一下两篇访问量非常高的,总结得相当Nice(我初学者一次就看懂了) 就不自己总结了(懒= =)直接用2333 ~ ~反射是框架设计的灵魂(使用的前提条件:必须先得到代表的字节码的Class,Class类用于表示.class文件(字节码))一、反射的概述JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的...
2020-02-05 23:01:46
162
原创 设计模式(常用)
设计模式六大原则单一职责原则就一个类而言,应该仅有一个引起它变化的原因。例如,在 Activity 中不应该存在 Bean 文件、网络数据处理以及列表的 Adapter。开放封闭原则类、模块、函数等应该是可以扩展的,但是不可修改。开放封闭原则有两个含义:一个是对于拓展是开放的,另一个是对于修改是封闭的。里氏替换原则所有引用基类(父类)的地方必须能够透明地使用其子类的对象。依赖...
2020-02-05 21:43:55
183
原创 多线程(全)
多线程进程正在运行的程序。系统进行资源分配和调用的独立单位,每个进程都有它自己的内存空间和系统资源。线程在一个进程内又可以执行多个任务,每个任务看成线程。程序的执行单元,程序使用CPU的基本单位。依赖进程存在。意义某一进程的执行路径(线程)越多,就有更高几率抢到CPU执行权提高应用程序使用率不敢保证那一个线程在什么时候抢到,线程具有随机性并发与并行并发:物理上同时发生,在某...
2020-02-05 19:54:05
360
原创 集合(全)
集合概述:方便对多个对象的操作区别A: 数组虽然可以存储对象,可以存基本类型。但是长度固定。B:集合只能存储引用类型,长度可变。特点A:集合只用于存储对象,集合长度可变,可以存不同类型对象。B:不同集合类数据接口不同体系图常见集合: Java集合就像一个容器,可以存储任何类型的数据,也可以结合泛型来存储具体的类型对象。在程序运行时,Java集合可以动态的进行扩展,...
2020-02-03 02:09:55
1864
原创 Random类
Random类概述:产生随机数的类构造方法A :public Random():没给种子用的默认种子,是当前时间的毫秒值B:public Random(long seed):给出指定种子**区别:**给定种子后每次得到的随机数是相同的成员方法1、public int nextInt( ):返回的是int范围内的随机数2、public int nextInt(int n...
2020-02-02 03:14:20
110
原创 Math类
Math类概述用于数学运算成员变量public static final double PIpublic static final double E成员方法1、static double abs(double a)返回 double 值的绝对值。2、static double cbrt(double a)返回 double 值的立方根。3、static double c...
2020-02-02 03:00:13
133
转载 正则表达式
Java正则表达式的解释说明表达式意义:1.字符x 字符 x。例如a表示字符a\ 反斜线字符。在书写时要写为\\。(注意:因为java在第一次解析时,把\\解析成正则表达式\,在第二次解析时再解析为\,所以凡是不是1.1列举到的转义字符,包括1.1的\,而又带有\的都要写两次)\0n 带有八进制值 0的字符 n (0 <= n <= 7)\0nn 带...
2020-02-02 02:21:42
106
原创 API常用类
本片内容有点多涉及Object、Scanner、String、StringBuffer、Arrays、包装类等六个常用类的知识点总结
2020-02-02 01:36:46
1348
原创 内部类
内部类概述定义在其他类内部的类特点1、可直接访问外部类成员,包括私有。2、外部类访问内部类成员,必须创建对象public class InterClassDemo { public static void main(String[] args) { Outer o = new Outer(); o.method(); }}class Outer { privat...
2020-02-01 15:46:01
108
原创 接口
接口概述 一系列方法的声明,一些方法特征的集合。一个接口只有方法特征没有方法的实现,这些方法可以在不同地方被不同类实现。特点1、interface 表示2、格式:interface 接口名{}实例化 多态实现。实现接口的类A:抽象类(意义不大)B:具体类(必须重写所有抽象方法)成员特点1、成员变量 ...
2020-02-01 04:55:12
321
原创 抽象
抽象概述 抽象类中不一定有抽象方法,有抽象方法的一定是抽象类。 在面向对象的概念中,所有的对象都是通过类来描绘的,但是反过来,并不是所有的类都是用来描绘对象的,如果一个类中没有包含足够的信息来描绘一个具体的对象,这样的类就是抽象类。特点:1、 抽象类不能实例化(可通过多态实现)2、有构造方法子类特点A:子类是抽象的B:子类不抽象(必须重写所有抽象方法)成...
2020-02-01 03:42:40
109
原创 多态
多态概述:某一个事物,在不同时刻表现出来的不同状态举例: 猫 m = new 猫(); 动物 d = new 猫();前提:有继承关系 要有方法重写(可以写,但没有意义) 要有父类引用指向子类对象 父 f = new 子();多态中的成员访问特点...
2020-01-31 20:33:54
213
原创 final关键字
继承代码体现: 由于继承中方法有一个现象:方法重写。所以,父类的功能,就会被子类给覆盖掉。有些时候,我们不想让子类去覆盖掉父类的功能,只能让他使用。针对这种情况,JAVA提供了一个关键字:finalclass Fu { public final void show () { System.out.println("这里是绝密资源,不能访问"); }}class Zi...
2020-01-31 20:28:29
228
原创 继承
6、继承好处: 提高了代码的复用性 提高了代码的维护性 让类与类之间产生了关系,是多态的前提(耦合性很强)概述: 单独的这个类被称为父类,基类或超类,这多个类可以成为子类或者派生类格式class Fu{}class Zi extends Fu {}class Student extends Perso...
2020-01-31 20:26:34
121
原创 封装
3、封装概述:隐藏对象的属性的实现细节,仅对外提供公共访问方式案例: 使用这个案例中 发现了一个问题,通过成员变量可以赋值一些非法的数据。 赋值前应先进行判断。判断在哪里做比较合适呢?判断应该定义在student类中,而我们在成员变量的位置不能判断。因为做数据校验,必须要依靠逻辑语句。逻辑语句应该定义在方法中。最终决定在student类中提供一个方法校验。 pub...
2020-01-31 19:59:35
233
原创 JAVA OOP面向对象
JAVA OOP面向对象开发不断地创建对象、使用对象、指挥对象做事情面向对象设计管理和维护对象之间的关系面向对象特征封装、多态、继承1、类与对象描述一个事物属性:该事物的描述信息 --------------------->成员变量行为:该事物能够做什么 ---------------------->成员方法类: 是一组相关的属性和行为的集合,抽象的概...
2020-01-31 19:55:55
110
原创 JAVA基础
JAVA基础1、关键字概述:被java语言赋予特定含义的单词特点:组成关键字字母全部是小写注意事项:goto和const作为保留字存在,目前不使用.有特殊颜色标记2、标识符概述:给接口、类、方法、变量等起名字使用的字符序列组成规则:英文大小写字母、数字字符、$和 _注意事项:不能数字开头、不能是java中关键字、java语言严格区分大小写。01常见命名规则1、见明知意包:其实...
2020-01-31 19:50:39
344
原创 约瑟夫环问题(单向循环链表实现)
1约瑟夫环问题: 已知n个人(以编号1,2,3…n分别表示)围坐在一张圆桌周围。约定从编号为k的人开始报数,数到m的那个人出列;他的下一个人又从1开始报数,数到m的那个人又出列;依此规律重复下去,直到圆桌周围的人全部出列。由此产生一个出队编号序列。eg:n=5, 即有5个人k=1, 从第一个开始报数 ---------> (...
2019-09-22 23:51:31
2458
原创 链表的面试题
1、求链表中有效节点个数(不算头结点)//方法:获取单链表节点的有效个数 /** * * @param Head 链表头节点 * @return 返回有效个数 */ public static int getLength(ExerciseNode Head) { if(Head.next==null) { return 0; } in...
2019-09-21 14:07:43
106
原创 链表补充
链表补充001单链表的创建、遍历先创建一个head头节点,作用表示单链表的的头后面每添加一个节点,直接加入如链表最后遍历: 通过一个辅助变量,帮助遍历整个链表public class SingleLinkedListDemo { public static void main(String[] args) { //测试 //先创建结点 HeroNode hero...
2019-09-16 15:13:29
145
原创 循环链表和双链表
3、循环链表public class LoopNode { //节点内容 int data; //下一个结点 LoopNode next = this; //自己循环自己 public LoopNode(int data) { this.data = data; } //删除节点 public void removeNext() { //取出下下个节点 Loo...
2019-09-16 15:11:45
139
原创 单链表
2、单链表小结:以结点方式存储,一个节点包含data域、next域。1、创建结点public class TestNode { public static void main(String[] args) { //创建结点, 节点是一个对象,有一个属性指针指向下一个节点 Node n1 = new Node (1); Node n2 = new Node (2); Node n3...
2019-09-06 16:56:31
119
原创 数组
1、数组的基本使用1)创建、遍历数组,增加数组元素public class TestArray { public static void main(String[] args) { //创建一个数组 int[] arr1 = new int [3]; //获取数组长度 int length1 =arr1.length; System.out.println(length...
2019-09-05 14:24:29
160
原创 Eclipse 实现Git提交
## Eclipse 实现Git提交新建项目,并且把项目提交到本地仓库至此,我们已经成功创建了GIT仓库,但是文件夹处于未提交状态,类似SVN,在文件夹上有个问号的标识。接下来我们需要提交代码到本地仓库。这时候我们在提交的时候可能会报一个错误:There are no staged files.解决办法如下图:这时候我们点击提交的...
2019-08-09 15:13:46
220
1
原创 创建一个 JAVA Web项目
一、用eclipse创建一个新的项目搜索maven 完成创建,点击NEXT。勾选创建不需要太多的框架,应实际情况而定。二、将建好的Maven项目变成JavaWeb项目点击项目右键Properties将环境设置为自己电脑装的java版本,设置好后apply应用。点击上方Source 选项 删除我们不需要的resources文件,Apply同时在左边项目找到相对应的resour...
2019-08-07 09:53:19
131
原创 Maven Eclipse环境配置
Maven 的配置安装一、通过官网获取 MavenMaven官网:http://maven.apache.org/二、解压并安装 Maven将刚刚下载的maven解压安装,并编辑settings.xml文件1.Maven会将从远程仓库下载得来的jar包默认存放在c盘中,为了便于后续管理和查看,我们可以设定一个更明确的目...
2019-08-06 15:40:28
112
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人