自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(19)
  • 资源 (6)
  • 收藏
  • 关注

转载 设计模式(二):建造者模式

1、使用场景当一个类的构造函数参数个数超过4个,而且这些参数有些是可选的参数,考虑使用构造者模式。2、解决的问题当一个类的构造函数参数超过4个,而且这些参数有些是可选的时,我们通常有两种办法来构建它的对象。 例如我们现在有如下一个类计算机类Computer,其中cpu与ram是必填参数,而其他3个是可选参数,那么我们如何构造这个类的实例呢,通常有两种常用的方式:public class Computer { private String cpu;//必须 private S

2021-03-30 01:11:37 216

转载 设计模式(十):模板方法模式

1、整体框架2、介绍2.1、定义模版方法模式:定义一个模版结构即抽象,将具体内容延迟到子类去实现2.2、作用模版方法模式是基于继承的。在不改变模版结构的前提下,在子类中重新定义模版中的内容。2.3、解决的问题提高代码的复用性:将相同部分的代码放在抽象类的父类中,而将不同的代码放到不同的子类中。 实现反向控制:通过父类调用子类的操作,并通过子类的具体实现扩展不同的行为,实现反向控制。3、认识模版方法模式3.1、变与不变程序设计的一个很重要的思考点就是“变与不变...

2021-03-30 00:56:47 1587

转载 Java子类继承父类一切,不能直接访问私有内容

1、继承首先我们明确一下“继承”一词的概念,在 Java 中,继承一词的意义是有限制的。一个子类只能继承其父类的可访问的成员,并且该子类没有覆盖或者说隐藏父类中的那些可访问成员。所以,一个类的成员就是指在这个类中所声明的属性和方法,再加上从其父类继承而来的属性和方法。也就是说,*子类是不能继承父类的私有成员的。虽然子类不继承父类中的私有成员,但是在父类中声明的这些私有成员仍然是子类类型对象的一部分。因为在实例化对象的时候,只初始化在当前类中所声明的属性明显是不足够的,还需要初始化其父类...

2021-03-29 22:55:33 2606

原创 map的put和putIfAbsent区别

目录1、putIfAbsent源码2、putIfAbsent和put的区别3、案例1、putIfAbsent源码default V putIfAbsent(K key, V value) { V v = get(key); if (v == null) { v = put(key, value); } return v; }意思就是:putIfAbsent如果传入key对应的v...

2021-03-25 10:40:15 5251

原创 第五讲 | String、StringBuffer、StringBuilder有什么区别?

1、Java的字符串,String、StringBuffer、StringBuilder有什么区别?String是Java语言非常基础和重要的类,提供了构造和管理字符串的各种基本逻辑。它是典型的Immutable类,被声明成为final class,所有属性也都是final的。也由于它的不可变性,类似拼接、裁剪字符串等动作,都会产生新的String对象。由于字符串操作的普遍性,所以相关操作的效率往往对应用性能有明显影响。StringBuffer是为解决上面提到拼接产生太多中间对象的问题而提...

2021-03-17 00:29:30 126

原创 第三讲 | 谈谈final、finally、 finalize有什么不同?

1、final、finally、 finalize有什么不同?final 可以用来修饰类、方法、变量,final修饰的class代表不可以继承扩展,final的变量是不可以修改的,而final的方法也是不可以重写的(override)。finally 则是Java保证重点代码一定要被执行的一种机制。我们可以使用try-finally或者try-catch-finally来进行类似关闭JDBC连接、保证unlock锁等动作。finalize 是基础类java.lang.Object的一个方...

2021-03-15 00:44:54 2109

转载 try-cath、throw和throws区别

java里的异常多种多样,这是一种非常有用的机制,它能帮助我们处理那些我们未知的错误,在java里,关于异常的有throw throws,还有一个try catch 程序块。接下来我们挨个看看这几个的作用。1.throwthrow 就是抛出一个异常,并获取这个异常的引用,这个异常会被抛到外部的环境,由外部环境进行处理class A{ public void func() throws Exception{ throw new Exception(); } }这里抛出了一个E...

2021-03-15 00:29:14 276

转载 Java:简述Java中的自定义异常

目录1. 自定义异常,格式如下:2. 标识可能抛出的异常:3. 捕获异常:4. 方法解释5. 示例如下: CustomException.java虽然Java系统已经预定义好了很多异常类,但是有时会遇到预定义的异常类不能描述出现的错误。在这种情况下,程序员可以通过扩展Exception类及其子类来定义自己的异常类。1. 自定义异常,格式如下:class 异常类名 extends Exception{ public 异常类名(String msg) ...

2021-03-15 00:25:36 241

转载 Java:简述throw-throws异常抛出

目录一、throws抛出异常二、使用throw抛出异常三、比较3.1 在声明方法时候抛出异常3.2 在方法中抛出异常任何Java代码都可以抛出异常,如:自己编写的代码、来自Java开发环境包中代码,或者Java运行时系统。无论是谁,都可以通过Java的throw语句抛出异常。从方法中抛出的任何异常都必须使用throws子句。一、throws抛出异常 如果一个方法可能会出现异常,但没有能力处理这种异常,可以在方法声明处用throws子句来声明抛出异常。例如汽车在运行时可能..

2021-03-15 00:23:36 3290

转载 Java:简述try-catch-finally中return返回

java中的 finally关键字通常与 try/catch块一起使用。用来在方法结束前或发生异常时做一些资源释放的操作。虽然看起来很简单,在日常开发中也发现关于 finllay还是有些需要注意的地方。一 . finally 语句块一定会执行吗?很多人都认为 finally语句块是肯定要执行的,比如下面的代码,只要进入了 try/catch块,不管有没有异常,都会执行 finllay块。public static void main(String[] args) { System...

2021-03-15 00:18:38 986

转载 Java:简述try-catch-finally异常捕获

一、try-catch语句在Java中,异常通过try-catch语句捕获。其一般语法形式为:try { // 可能会发生异常的程序代码 } catch (Type1 id1){ // 捕获并处置try抛出的异常类型Type1 } catch (Type2 id2){ //捕获并处置try抛出的异常类型Type2 } 关键词try后的一对大括号将一块可能发生异常的代码包起来,称为监控区域。Java方法在运行过...

2021-03-15 00:14:45 735

原创 Java:详解Java中的异常(Error与Exception)

·

2021-03-14 23:48:15 8772

原创 第二讲 |Exception和Error有什么区别?

1、请对比Exception和Error,另外,运行时异常与一般异常有什么区别?典型回答:Exception和Error都是继承了Throwable类,在Java中只有Throwable类型的实例才可以被抛出(throw)或者捕获(catch),它是异常处理机制的基本组成类型。Exception和Error体现了Java平台设计者对不同异常情况的分类。Exception是程序正常运行中,可以预料的意外情况,可能并且应该被捕获,进行相应处理。Error是指在正常情况下,不大可能出现的情况,绝大

2021-03-14 23:39:19 1243

原创 Java线程基础(19): 静态变量、实例变量、局部变量

java多线程编程中,存在很多线程安全问题,至于什么是线程安全呢,给出一个通俗易懂的概念还是蛮难的,如同《java并发编程实践》中所说:写道给线程安全下定义比较困难。存在很多种定义,如:“一个类在可以被多个线程安全调用时就是线程安全的”。1、静态变量:线程非安全。静态变量即类变量,位于方法区,为所有对象共享,共享一份内存,一旦静态变量被修改,其他对象均对修改可见,故线程非安全。2、实例变量:单例模式(只有一个对象实例存在)线程非安全,非单例线程安全。实例变量为对象实例私有,在虚拟..

2021-03-14 23:30:21 307

转载 Java类加载机制

目录1、什么是类的加载2、类的生命周期加载连接3、类加载器4、类的加载5、双亲委派模型6、自定义类加载器1、什么是类的加载类的加载指的是将类的.class文件中的二进制数据读入到内存中,将其放在运行时数据区的方法区内,然后在堆区创建一个java.lang.Class对象,用来封装类在方法区内的数据结构。类的加载的最终产品是位于堆区中的Class对象,Class对象封装了类在方法区内的数据结构,并且向Java程序员提供了访问方法区内的数据结构的接口。...

2021-03-14 23:01:30 100

转载 JVM基础(十二):Java中局部变量、实例变量和静态变量在方法区、栈内存、堆内存中的分配

目录1、java中的变量与数据类型2、思考3、例子:3.1、分析:3.2、结论1、java中的变量与数据类型变量是一个容器,用来装什么的呢?装内存地址,这个内存地址对应的是内存中某个数据。那为什么这个容器不直接装这个数据更简洁呢?因为直接装数据的话,这个数据就无法被别的变量使用,无法复用就会导致很多不便。所以变量的内存分配可以看成两个不部分:1、变量在内存中的分配(“变量分配”) 2、变量所引用的数据在内存中的分配(“数据分配”)1.1、变量类型有:局部:在.

2021-03-14 22:26:56 3468 6

转载 【Java深入】深拷贝与浅拷贝详解

目录1.拷贝的引入(1)引用拷贝​(2)对象拷贝2.浅拷贝(1)定义:​3.深拷贝(1)定义:(2)实现深拷贝(实例1):​(3)利用序列化实现深拷贝(实例2)将一个对象的引用复制给另外一个对象,一共有三种方式。第一种方式是直接赋值,第二种方式是浅拷贝,第三种是深拷贝。所以大家知道了哈,这三种概念实际上都是为了拷贝对象啊。1.拷贝的引入(1)引用拷贝创建一个指向对象的引用变量的拷贝。例1:Teacher teacher = new Teacher

2021-03-14 19:10:40 181

原创 第一讲 | 谈谈对Java平台的理解?

宣传“Write once, run anywhere”1、谈谈你对Java平台的理解?“Java是解释执行”,这句话正确吗?

2021-03-13 22:42:45 119

原创 Java核心技术面试精讲

cdsdds

2021-03-12 23:48:48 634 2

086、案例实战:每秒仅仅上百请求的系统为什么会因为OOM而崩溃.pdf

086、案例实战:每秒仅仅上百请求的系统为什么会因为OOM而崩溃.pdf

2021-11-14

sqoop详细教程

sqoop详细教程。Apache Sqoop是用来实现结构型数据(如关系数据库)和Hadoop之间进行数据迁移的工具。它充分利用了MapReduce的并行特点以批处理的方式加快数据的传输,同时也借助MapReduce实现了容错。

2018-05-17

matlab实现神经网络

用matlab实现了神经网络,并标注了批注,通俗易懂。易于理解。

2018-01-30

matlab使用小结

matlab基础介绍,每条语句标注清楚,通俗易懂。易于理解。

2018-01-30

lomok.docx

lombok的讲解

2017-08-21

空空如也

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

TA关注的人

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