自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Hello, New World!

万物伊始,效率本源。大道至简,代码之禅。自建博客: https://janycode.github.io

  • 博客(431)
  • 资源 (4)
  • 收藏
  • 关注

原创 【Java】集合框架之Set接口、实现类、排序

文章目录Set接口与实现类① HashSet类(HashCode)② LinkedHashSet类(记录插入顺序)TreeSet类(二叉树-自动排序)HashSet排序的两种方法Set接口与实现类特点:1)无序、无下标、元素不可重复(当插入新元素时,如果新元素与已有元素进行equals比较,结果为true时,则拒绝新元素插入)2)set接口并没有提供自己独有的方法,均是继承Collecti...

2020-03-06 19:20:15 401

原创 【Java】泛型概念和使用的理解

文章目录1. 泛型集合2.泛型深入复杂用法2.1 普通泛型2.2 的含义2.3 <?> 的含义2.4 静态泛型1. 泛型集合概念:参数化类型、类型安全的集合,强制集合元素的类型必须一致。特点:1. 编译时即可检查,而非运行时抛出异常;2. 访问时,不必类型转换(拆箱);3. 不同泛型之间引用不能相互赋值,泛型不存在多态。import java.util.ArrayLis...

2020-03-05 22:59:14 504

原创 【Java】集合框架之List接口和其实现类

文章目录List接口和其实现类1. List接口2. ArrayList类(数组)3. Vector类(数组、线程同步)4. LinkedList类(链表)5. List实现类常用API测试例子源码JDK1.8-API在线中文版List接口和其实现类1. List接口特点:有序、有下标、元素可重复补充:继承了父接口提供的共性方法,同时定义了一些独有的与下标相关的操作方法方法:<参...

2020-03-04 23:12:34 233

原创 【Java】如何重写hashCode()和equals()方法

文章目录1. 如何重写hashCode()方法2. 如何重写equals()方法如之前提到的对hashCode()的分析:【Java】hashCode特性、算法和作用例子代码中的类:class Worker { private String name; private int age; private double salary; //...略}1. 如何重写hashCode...

2020-03-04 22:09:23 2068

原创 【Java】4种方法统计字符串中所有字符出现次数 - 优劣分析

统计字符串中所有字符出现的次数的 3 种方法,总结如下:countChars1() 方法使用 for-for双重循环,逐个计数、检查重复;countChars2() 方法使用String的replace方法替换出相同字符,保存剩下的字符组成的字符串,最后长度相减,得出每个字符次数;countChars3() 方法使用new int[10]数组,以下标作为要统计的数字字符,以元素作为计数器进...

2020-03-03 22:53:31 1858

原创 【Java】10行代码实现4位验证码字符(不重复)

码上来:简单验证码程序:identifyingCode()参数:无返回值:String描述:4位不重复字符,包含大小写和数字。/** * 给定字符串随机获取4个字符,并使用StringBuilder拼接成字符串【验证码】 */public class Test14 { public static void main(String[] args) { // 测试20次看看有无...

2020-03-03 21:36:03 1516 2

原创 【Java】字符串引用比较的深入理解 - String.intern()

文章目录1. String.intern()方法作用示例1:追加字符串的引用比较示例2:字符串引用追加后intern()加入常量池示例3:使用intern()方法的返回值比较2. 字符串比较的再次深入探讨1. String.intern()方法作用参考jdk1.8API文档。public String intern()返回字符串对象的引用。当调用intern方法时,如果池已经包含与eq...

2020-03-03 14:34:52 363

原创 【Java】StringBuilder与StringBuffer、字符串自动优化机制

文章目录1. String 类(字符串)的特点2. Java反编译分析字符串追加3. StringBuilder类与String.intern()方法示例1:追加字符串的引用比较示例2:字符串引用追加后intern()加入常量池示例3:使用intern()方法的返回值比较4. 字符串比较的再次深入探讨1. String 类(字符串)的特点字符串是常量,创建后不可改变;字符串字面值存储在字符...

2020-03-03 14:11:36 642

原创 【Java】2分钟弄懂String类型引用经典面试题

文章目录1. String类的两个特点2. 常量池与字符串池一道Java经典String类型引用的面试题:public class TestBasicString { public static void main(String[] args) { String s1 = "abc"; String s2 = "abc"; ...

2020-03-02 23:37:45 362

原创 【Java】整数类型包装类缓冲区分析(附面试题)

文章目录1.什么是包装类?2.转型方法① xxxValue();② parseXxxx(String s);③ valueOf(基本类型); valueOf(字符串类型);④ 自动装箱、拆箱3. 整型包装类的缓冲区分析3.1 为什么是类加载时?3.2 为什么是256个常用整数(-128~127)?3.3 为什么可以节约内存?1.什么是包装类?基本数据类型所对应的引用数据类型。Ob...

2020-03-02 23:17:15 694

原创 【Java】GC垃圾回收器初识与finalize()作用

文章目录1. Java GC 垃圾回收器2. finalize()方法3. final、finalize()、finally的区别 - 面试题Java 中有垃圾回收器回收无用对象占用的内存,这也真是Java可以屏蔽掉C语言中类似指针和内存分配malloc的两大头疼问题。作为语言榜首的Java自然有其垃圾回收的一套机制策略。1. Java GC 垃圾回收器Java GC(Garbage Col...

2020-03-02 22:38:10 299

原创 【Java】hashCode特性、算法和作用

文章目录1. hashCode的特性2. hashCode的算法3. hashCode的作用1. hashCode的特性(1)HashCode的存在主要是用于查找的快捷性,如Hashtable,HashMap等,HashCode经常用于确定对象的存储地址;(2)如果两个对象相同, equals方法一定返回true,并且这两个对象的HashCode一定相同;(3)两个对象的HashCode...

2020-03-01 21:05:24 351

原创 【Java】访问权限控制的深入理解

文章目录1. 包:库的单元2. Java访问权限修饰词2.1 public2.2 private2.3 protected3. 接口和实现中的访问权限4. 类的访问权限面向对象设计的2个基本问题:如何把变动的部分与保持不变的部分区别开来?开发者如何约定权限来修改和改进代码,并确保客户代码不会因为这些改动收到影响?Java使用访问权限修饰符来供开发人员向客户端程序员指明可用和不可用的...

2020-03-01 14:00:13 480

原创 【Java】抽象类与接口的区别和应用场景

文章目录abstract 与 interface抽象类与接口的语法区别:抽象类与接口的应用场景接口(interface)的应用场合:抽象类(abstract class)的应用场合:abstract 与 interface据说是常见面试题。抽象类与接口的语法区别:构造方法:抽象类可以有构造方法,接口中不能有构造方法成员变量:抽象类和接口中都可以包含静态成员变量,抽象类中的静态成员变...

2020-02-29 23:21:32 986

原创 【Java】常用类之顶级Object类常用方法

文章目录Object类1. getClass()2. hashCode()3. toString()4. equals();Object类简介:超类、基类,所有类的直接或间接父类,位于继承树的最高层特点:任何类,如果没有书写extends显式继承某个类,都默认继承Object类Object类中所定义的方法,是所有对象都具备的方法Object类可以存储任何对象:作为参数,可接收任何对象...

2020-02-29 22:06:46 338

原创 【Java】内部类详解:成员/静态/局部/匿名内部类

总的来说:1.内部类通常用来解决“多重继承”的问题。2.当你希望隐藏一个类的实现,减少工程中.java文件数量,或者这个类不想被扩展时,你可以通过匿名内部类来创建一个类的对象。3.java虽然无法直接在语法层面上支持闭包,但是可以通过内部类来模拟一个闭包的程序结构。1.内部类概念:在一个类的内部再定义一个完整的类。语法:class Outer { class Inner ...

2020-02-28 23:12:28 240

原创 【Java】内部类和成员内部类的特点

1.内部类概念:在一个类的内部再定义一个完整的类。语法:class Outer { class Inner { }}编译:Outer$Inner.class 和 Outer.class特点:编译之后可生成独立的字节码文件内部类可直接访问外部类的私有成员,而不破坏封装可为外部类提供必要的内部功能组件1.1 成员内部类概念:在类的内部定义,与实例变量、实...

2020-02-27 22:35:44 503

原创 【Java】从对象数组排序深入理解接口回调

接口的好处①程序的耦合度降低;②更自然的使用多态;③设计与实现完全分离;④更容易搭建程序框架;⑤更容易更换具体实现;实例源码:对一组包含姓名、年龄、性别、分数的学生数组进行排序,分别按年龄、分数、姓名进行三种排序。public class TestStudentSort { public static void main(String[] args) { Student s...

2020-02-27 22:33:47 223

原创 【Java】使用接口回调验证哥德马赫猜想

验证哥德巴赫猜想:输入一个大于6的偶数,输出这个偶数能够分解为哪两个质数的和。使用Java接口interface的方式实现思路:① 先有接口/标准 - 约定② 程序员B - 先有接口使用者,以工具方法传参形式编写逻辑(接口回调) : void checkGoldBach()③ 程序员A - 后有接口实现者,根据接口规范编写实现类逻辑(方法覆盖) : class ProgramerPrim...

2020-02-27 22:32:48 294

原创 【Java】abstract、static、final修饰使用汇总

为什么不能用abstract修饰属性,私有方法,构造器,静态方法,final的方法?private单独说明私有,仅类内访问。abstractabstract修饰类:抽象类,不能直接独立new对象;可被子类继承,提供共性属性和方法;可声明为引用,强制使用多态(更纯粹的多态);abstract修饰方法:只有方法声明,没有方法实现;必须包含在抽象类中(abstract cla...

2020-02-26 22:40:41 381

原创 【Java】接口回调的基本用法和理解

接口回调基本用法先有接口的使用者,后有接口的实现者。案例:对一组学生对象进行排序/** Comparable.java* 接口/标准 (排序)* 只有实现此接口的对象,才可以排序*/public interface Comparable<T> { // <T> 泛型 /** * 比较的方法 * this 与 传入的对象...

2020-02-26 22:24:55 231

原创 【Java】接口interface的使用思路

微观概念:接口是一种能力和约定。接口的定义:代表了某种能力方法的定义:能力的具体要求宏观概念:接口是一种标准。耦合度:模块与模块之间的关联程度,关联的越密切,耦合越高;越松散,耦合越低。思路顺序:(1)接口/标准(2)接口使用者(3)接口实现者//(2) 接口的使用者public class TestUsbInterface { public static vo...

2020-02-26 22:23:30 542 1

原创 【Java】接口interface的多继承使用

接口interface的多继承使用类与类:单继承,extends 父类名称类与接口:多实现,implements 接口名1,接口名2,接口名3接口与接口:多继承,extends 父接口1,父接口2,父接口3接口继承多个父接口后,所有父接口的公开抽象方法也会被继承,进而在实现类中必须都要重写以覆盖抽象方法。代码示例:public class TestMultiExtends { ...

2020-02-26 22:22:42 854

原创 【Java】参数传递机制-形参和实参说明

参数:形参和实参1.形参:用来接收调用该方法时传递的参数。只有在被调用的时候才分配内存空间,一旦调用结束,就释放内存空间。因此仅仅在方法内有效。2.实参:传递给被调用方法的值,预先创建并赋予确定值。传参:传值和传引用1.传值调用:形参在栈区,属于局部变量,值改变作用到了形参,而不会到实参。2.传引用调用:传引用调用中,如果传递的参数是引用数据类型,参数视为实参。在调用的过程中,将实参的地...

2020-02-25 23:15:31 752

原创 【Java】接口(interface)的定义和使用

1.什么是接口Java为单继承,当父类的方法种类无法满足子类需求时,可实现接口扩容子类能力。即:Java中使用抽象类/父类表示通用属性时,每个类只能继承一个类,假如子类已经从一个父类继承了,就不能再继续继承另外的父类。但每个类可以实现多个接口,这样子类就拥有了更多的能力。微观概念:接口是一种能力和约定。接口的定义:代表了某种能力方法的定义:能力的具体要求2.接口的语法API(应...

2020-02-25 23:09:08 1233

原创 【Java】final关键字各种场景应用实例(源码)

注意:final修饰符的位置final类不能继承、final方法不能覆盖、final值不能修改。final基本数据类型,值不能被修改;final引用数据类型,地址不能被修改。函数形参:在传参时会有一份实参的拷贝作为形参的初始化。public class TestFinalArguments { public static void main(String[] args) {...

2020-02-25 23:07:43 351

原创 【Java】final关键字概念及详解

final关键字概念:最后的,不可更改的。—— 保护类/方法/变量的功能和值final可修饰:类(最终类):此类不能被继承,eg:String, Math, System均为final修饰的类方法(最终方法):此方法不能被覆盖。变量(最终变量):此变量值不能被改变(常量 - 通常变量名全大写),eg: Math.PI实例常量赋值:显式初始化、动态代码块、构造方法要求:①Dead...

2020-02-25 23:06:34 226

原创 【Java】Object顶级父类及其常用方法

Object类class Anything { // do something}// 等价于 ↓↓↓class Anything extends Object { // do something}在Java中所有的类都直接或间接的继承了 java.lang.Object 类。Object是一个特殊的类,它是所有类的父类,是Java类中最高层的类。因此在Java中创...

2020-02-24 22:59:28 775

原创 【Java】数组操作:增删改查(附源码)

经验:需要导入外部的包 java.util.Arrays.copyOf(); 用于数组扩容对于重复使用的如check、print类的功能以函数编写减少代码冗余对数组的操作主要是2点:① 越界问题;②索引下标0~length-1问题;使用独立的size作为数组的有效元素个数统计,更利于可读性;import java.util.Arrays; // Arrays.copyOf() 数组扩...

2020-02-24 21:35:17 554 1

原创 【Java】String类的常用方法汇总及解析

String类字符串必须包含在一对双引号""内声明字符串变量必须经过初始化才能使用,否则会报"变量未被初始化错误"创建字符串String(char a[]);  // eg: char[] a = {‘h’,‘e’,‘l’,‘l’,‘o’};  String s = new String(a);String(char a[], int offset, int ...

2020-02-24 21:15:03 323

原创 Eclipse:基本使用操作及常用核心快捷键

Eclipse常规使用创建项目:File > new > project > Java Projectsrc下创建包:[右键]new > Packagepackage下创建类:[右键]new > Class (.java文件)修改编辑字体:Windows > Preferences > Gerenal > Appearance > C...

2020-02-24 20:56:49 370

原创 【Java】面向对象:static静态属性/方法/代码块

Static修饰类的属性或方法实例属性,是每个对象各自持有的独立内存空间(多份),对象单方面修改,不会影响其他对象。静态属性,static 修饰的实例属性,为。静态属性,是整个类共同持有的共享空间(一份),任何对象修改,都会影响其他对象。Java中规定:不能将方法体内的局部变量声明为 static!静态属性:类属性静态方法:类方法不必创建对象,可直接通过类名访问【推荐】:类名....

2020-02-24 19:05:39 475 2

原创 【Java】面向对象:abstract关键字

abstract修饰符 抽象:程序中不能被new创建的?父类,抽象,不完整,不具体,不能独立存在。通过abstract修饰类,意为抽象类,不能new对象。 abstract:抽象的,似是而非,像却又不是,具备某种对象的特征,但不完整 abstract修饰类概念:不够完整,不够具体,不能独立存在 语法:abstractclass类名 { } a...

2020-02-22 11:44:24 214

原创 【Java】面向对象:多态、应用场景、装箱和拆箱

多态 概念:父类引用指向子类对象,从而产生多种形态。 eg: Animala =newDog(); 二者具有直接或者间接的继承关系时,父类引用可指向子类对象,形成多态。 父类引用仅可调用父类所声明的属性和方法,不可调用子类独有的属性和方法。 多态的两种应用场景: 场景①父类类型引用作为方法的形参,实现多态,使方法参数的类型更为宽泛 (该父...

2020-02-22 11:41:37 795

原创 【Java】面向对象:继承、方法覆盖、super关键字

继承 程序中的继承,是类与类之间特征和行为的一种赠予或获得。 类与类之间必须满足isa的关系。 ①父类的选择: 功能越精细,重合点越多的,就越接近直接父类。 ②父类的抽象: 根据程序需要使用到的多个具体类,进行共性提取,进而定义父类。 在一组相同或类似的类中,抽取特征和行为,定义在父类中,实现重用。 ③继承语法: class子类名e...

2020-02-22 11:37:56 178

原创 【Java】面向对象:封装、private关键字

封装 概念:尽可能隐藏对象的内部实现细节,控制对象的修改和访问权限 访问修饰符: private (可将属性修饰为私有,仅本类可见) get/set方法是外界访问对象私有属性的唯一通道,方法内部对属性检测和过滤 提供public公共访问方法,以保证数据可以正常录入和访问 public class TestEncapsulation2 { ...

2020-02-22 11:34:23 253

原创 【Java】面向对象:构造方法、方法重载、this关键字

1.什么是对象 程序是为了模拟现实世界,解决现实问题而使用计算机语言编写的指令集和。 现实世界是由无数个"对象"组成。 万物皆对象。任何对象,都由自己的特征和行为。 特征:称之为属性,一般为名词,代表对象有什么。 行为:称之为方法,一般为动词,代表对象能做什么。 分析一个对象有什么?(手机:属性) 颜色、品牌、价格、星号...

2020-02-22 11:30:26 293

原创 【Java】一维数组与二维数组

1.数组的概念 概念:一组连续的存储空间,存储多个相同数据类型的值 特点:类型相同,长度固定。 2.数组的创建、访问、遍历 创建语法: ①声明并分配空间 数据类型[] 变量名 =new数据类型[数组大小值]; eg: int[] arr = new int[5]; ②先声明,再分配空间 数据类型[]...

2020-02-15 17:52:40 254

原创 【Java】Java选择排序 - 数组应用

选择排序 固定值与其他值依次比较,互换位置 记忆:外层0 ~ <length-1,i为固定值,内层i+1~ <length /*** 选择排序:固定值与其他值依次比较,互换位置* 总共轮次:数组长度-1* 单轮次数:固定值依次比较其他值* @arr 传入int类型数组...

2020-02-15 17:41:09 178

原创 【Java】Java冒泡排序 - 数组应用

Java冒泡排序 相邻的两个数值比较大小,互换位置 记忆:外层0 ~ <length-1,内层0 ~ <length-1-i /*** 冒泡排序:相邻两两比较,互换位置* 总共轮次:数组长度-1* 单轮次数:(数组长度-1)基础上逐级递减* @arr 传入int类型数组*/p...

2020-02-15 17:39:47 223

JVM-Java内存规范.png

Java-JVM内存规范(详细完整思维导图),包含物理内存与虚拟内存、内核空间与用户空间、java中需要使用的内存组件、jvm内存结构、jvm内存回收策略、JVM参数等...

2020-05-28

MVC模式用JSP实现用户管理(增删改查)核心逻辑图示.png

MVC模式 + JSP + 三层架构设计,实现对用户的登陆、登出、新增(注册)、删除用户、修改用户、查询用户、以及查询所有用户的基本核心逻辑。

2020-05-09

Filter过滤器实现自动登陆核心逻辑.png

Java中Servlet使用Filter过滤器实现自动登陆核心逻辑流程图(基本可以直译代码),特此分享供大家学习交流使用,如有不足之处请私信或者评论纠正。

2020-05-09

空空如也

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

TA关注的人

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