自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(51)
  • 收藏
  • 关注

原创 String常用方法

int length():返回字符串的长度: return value.lengthchar charAt(int index): 返回某索引处的字符return value[index]boolean isEmpty():判断是否是空字符串:return value.length == 0String toLowerCase():使用默认语言环境,将 String 中的所有字符转换为小写String toUpperCase():使用默认语言环境,将 String 中的所有字符转换为大写Stri.

2021-06-02 11:24:50 194

原创 线程的生命周期

JDK中Thread.State类定义线程的几种状态新建:当一个Thread类或其子类的对象被声明并创建时,新生的线程对象处于新建 状态就绪:处于新建状态的线程被start()后,将进入线程队列等待CPU时间片,此时它已 具备了运行的条件,只是没分配到CPU资源运行:当就绪的线程被调度并获得CPU资源时,便进入运行状态, run()方法定义了线 程的操作和功能阻塞:在某种特殊情况下,被人为挂起或执行输入输出操作时,让出 CPU 并临时中 止自己的执行,进入阻塞状态死亡:线程完成了它的全部工作或

2021-06-01 14:33:23 164

原创 Thread类的常用方法

Thread类的常用方法void start(): 启动线程,并执行对象的run()方法run(): 线程在被调度时执行的操作static Thread currentThread(): 返回当前线程。在Thread子类中就 是this,通常用于主线程和Runnable实现类String getName(): 返回线程的名称void setName(String name):设置该线程名称static void yield():线程让步join() :在线程a中调用线程b的joi

2021-06-01 13:57:20 378

原创 程序、进程和线程

程序是为完成特定任务、用某种语言编写的一组指令的集合。即指一 段静态的代码,静态对象。进程是程序的一次执行过程,或是正在运行的一个程序。是一个动态 的过程:有它自身的产生、存在和消亡的过程。——生命周期程序是静态的,进程是动态的 。进程作为资源分配的单位,系统在运行时会为每个进程分配不同的内存区域 。线程进程可进一步细化为线程,是一个程序内部的一条执行路径。若一个进程同一时间并行执行多个线程,就是支持多线程的线程作为调度和执行的单位,每个线程拥有独立的运行栈和程序计数器(pc

2021-06-01 13:12:38 250

原创 异常处理机制及常见问题

异常处理机制在编写程序时,经常要在可能出现错误的地方加上检测的代码, 如进行x/y运算时,要检测分母为0,数据为空,输入的不是数据 而是字符等。过多的if-else分支会导致程序的代码加长、臃肿, 可读性差。因此采用异常处理机制。Java程序的执行过程中如出现异常,会生成一个异常类对象, 该异常对象将被提交给Java运行时系统,这个过程称为抛出 (throw)异常。异常对象的生成由虚拟机自动生成:程序运行过程中,虚拟机检测到程序发生了问题,如果在当 前代码中没有找到相应的处理程序,就会在后台

2021-05-20 20:55:06 441

原创 异常体系

异常概述在Java语言中,将程序执行中发生的不正常情况称为“异常”。(开发过程中的语法错误和逻辑错误不是异常)异常体系Erro(unchecked)Java虚拟机无法解决的严重问题。如:JVM系统内部错误、资源耗尽等严重情况。比如:StackOverflowError和OOM。一般不编写针对性 的代码进行处理。Exception编译时异常(受检异常)编译器要求必须处理的异常。(声明或者捕获)程序在运行时由于外界因素造成的一般性异常。举例:NullPointerExceptio

2021-05-20 18:39:45 113

原创 内部类(成员内部类、局部内部类、匿名内部类)

内部类当一个事物的内部,还有一个部分需要一个完整的结构进行描述,而这个内 部的完整的结构又只为外部事物提供服务,那么整个内部的完整结构最好使 用内部类。分类成员内部类(static成员内部类和非static成员内部类)局部内部类(不谈修饰符)、匿名内部类成员内部类特点:作为外部类成员:1.和外部类不同,Inner class还可以声明为private或protected;2.可以调用外部类的结构3.Inner class 可以声明为static的,但此时就不能再使用外层类的

2021-05-16 20:55:34 733

原创 RabbitMQ单机集群搭建及WEB监控

 在搭建之前请确保已安装RabbitMQ及其Erlang语言环境,本文对此不做介绍。我也是在搭建过程中很出了错,在网上看了很多资料,做此记录。场景:两个rabbitmq节点,分别为rabbitmq-1,rabbitmq-2,rabbitmq-1为主节点,rabbitmq2为从节点。在正式搭建之前,需要停掉,原本的rabbitmq服务。查看进程状态: ps -ef|grep rabbitmq停止rabbitmq服务:systemctl stop rabbitmq-server正式搭

2021-05-14 21:36:58 939 13

原创 代码块

代码块

2021-05-13 19:05:02 93

原创 final关键字

final关键字

2021-05-13 19:04:21 97

原创 重写和重载及其区别

重写重载

2021-05-13 19:02:41 266

原创 对面向对象的理解

面向对象–面向对象是一种编程思想,我们常说万事万物皆为对象,只要是现实中存在的事物都可以被抽象成对象。对象有以下特点:对象具有属性和行为对象具有变化的状态对象具有唯一性对象都是某个类别的实例一切皆为对象,真实世界中的所有事物都可以视为对象面向对象的特性:抽象性:抽象是将一类对象的共同特征总结出来构造类的过程,包括数据抽象和行为抽象两方面。继承性:指子类拥有父类的全部特征和行为,这是类之间的一种关系。Java 只支持单继承。封装性:封装是将代码及其处理的数据绑定在一起的一种编程

2021-05-13 18:59:44 96

原创 Java 四种访问权限修饰符

访问修饰符 Java权限修饰符public、protected、 (缺省)、 private置于类的成员定义 前,用来限定对象对该类成员的访问权限。修饰符类内部同一个包不同包的子类同一个工程privateYes(缺省)YesYesprotectedYesYesYespublicYesYesYesYes对于class的权限修饰只可以用public和default(缺省)。public类可以在任意地方被访问。def

2021-05-13 18:32:52 181

原创 封装、继承、多态

封装 封装把一个对象的属性私有化,同时有选择的提供一些可以被外界访问的属性的方法,如果属性不想被外界访问,我们大可不必提供方法给外界访问。但是如果一个 类没有提供给外界访问的方法,那么这个类也没有什么意义了。继承 继承是使用已存在的类的定义作为基础建立新类的技术,新类的定义可以增加新的数据或新的功能(扩展性),也可以用父类的功能,但不能选择性地继承父类。通过使用继承我们能够非常方便地复用以前的代码。 关于继承如下 3 点请记住:子类拥有父类非 private 的属性和方法。子类可以拥

2021-05-13 18:17:17 80

原创 面向过程和面向对象的区别是什么?

面向过程(POP)和面向对象(OOP)的区别二者都是一种思想,面向对象是相对于面向过程而言的。面向过程,强调的是功能行为,以函数为最小单位,考虑怎么做。面向对象,将功能封装进对象,强调具备了功能的对象,以类/对象为最小单位,考虑谁来做。面向对象更加强调运用人类在日常的思维逻辑中采用的思想方法与原则,如 抽象、分类、继承、聚合、多态等。...

2021-05-13 17:29:40 1093

原创 Arrays工具类常用方法

Arrays工具类常用方法boolean equals(int[] a,int[] b) 判断两个数组是否相等。String toString(int[] a) 输出数组信息。void fill(int[] a,int val) 将指定值填充到整个数组之中。void sort(int[] a) 对数组进行排序。int binarySearch(int[] a,int key) 对排序后的数组进行二分法检索指定的值。-- int binarySearch(int[] a,int key)

2021-05-13 17:16:30 90

原创 Java数组的声明或初始化

数组的初始化Java中的数组必先初始化才可以使用,所谓初始化就是为数组的数组元素分配内存,并为每个数组元素赋值;一维数组的初始化静态初始化int[] arr = new int[]{1,2,3};int[] arr = {1,2,3};//简化写法//tip:前面的[]位置随意,后面的不能动。[]前后可随意加空格!int arr[] = new int[]{1,2,3};//int arr[] = new []int{1,2,3};//错误写法动态初始化int[] arr =

2021-05-13 16:54:00 278

原创 Java语言特点及其核心机制

Java语言特点及其核心机制语言特点面向对象三大特性:封装、继承、多态什么是面向对象?健壮性 吸收了C/C++语言的优点,但去掉了其影响程序健壮性的部分(如指针、内存的申请与 释放等),提供了一个相对安全的内存管理和访问机制 。跨平台性 通过Java语言编写的应用程序在不同的系统平台上都可以运行。“Write once , Run Anywhere” 。 原理:只要在需要运行 java 应用程序的操作系统上,先安装一个Java虚拟机 (JVM Java Virtu

2021-05-13 16:09:09 266

原创 一题详解i++,++i原理

题目内容请写出如下代码的运算结果:public class Test { public static void main(String[] args) { int i = 1; i = i++; //i = 1 int j = i++;// i++ = 1 , j = 1 , i = 2 int k = i + ++i * i++;//i = 2 , ++ i = 3 , i++ = 3, k = 11

2021-04-22 17:08:40 263

原创 NewCode02

1.在 Java 中,存放字符串常量的对象属于( )类对象。Character 字符封装类String 常量池中字符串StringBuffer 存放字符数组Vector 数组2. 如果类的方法没有返回值,该方法的返回值类型应当是abstract。()如果类的方法没有返回值,该方法的返回值类型应当是void。被abstract修饰的类是抽象类,抽象类不能被实例化,但是可以被继承,也可以继承。3.在java中,已定义两个接口B和C,要定义一个实现这两个接口的类,以

2020-11-12 20:21:30 328

原创 2020年全国大学生数学建模B题题目概要

穿越沙漠游戏资源:水、食物(/箱)胜利条件:规定时间内到达终点,并保留尽可能多的资金。失败标志:水和食物都已耗尽且未到达终点。注意点:1.可在矿山、村庄补充资金或资源。2.每天玩家拥有的水和食物质量之和不能超过负重上限。3.每天天气只有三种情况,每个地方都一样。(“晴朗”、“高温”、“沙暴”)4.行动自如,但沙暴日必须在原地停留。5.原地停留一天消耗的资源数量称为基础消耗量,反之为2倍。6.第0天(起点可视为一个补给站)可用初始资金以基准价格购买水和食物。玩家可在

2020-09-10 20:16:29 7358 1

原创 Mybatis源码分析总结

1111

2020-08-05 16:02:20 512 2

原创 乐观锁与悲观锁

一、简介无论是悲观锁还是乐观锁,都是人们定义出来的概念,可以认为是一种思想。其实不仅仅是关系型数据库系统中有乐观锁和悲观锁的概念,像hibernate、tair、memcache等都有类似的概念。所以,不应该拿乐观锁、悲观锁和其他的数据库锁等进行对比。二、悲观锁当要对数据库中的一条数据进行修改的时候,为了避免同时被其他人修改,最好的办法就是直接对该数据进行加锁以防止并发。这种借助数据库锁机制,在修改数据之前先锁定,再修改的方式被称之为悲观并发控制。之所以叫做悲观锁,是因为这是一种对数据的修

2020-07-21 23:14:32 109

原创 行级锁与表级锁

一、简介数据库锁定机制简单来说,就是数据库为了保证数据的一致性,而使各种共享资源在被并发访问变得有序所设计的一种规则。对于任何一种数据库来说都需要有相应的锁定机制,所以MySQL自然也不能例外。MySQL数据库由于其自身架构的特点,存在多种数据存储引擎,每种存储引擎所针对的应用场景特点都不太一样,为了满足各自特定应用场景的需求,每种存储引擎的锁定机制都是为各自所面对的特定场景而优化设计,所以各存储引擎的锁定机制也有较大区别。MySQL各存储引擎使用了三种类型(级别)的锁定机制:表级锁定,行级锁定和页级

2020-07-21 23:07:55 2456

原创 Mybaties实现持久化增删查改

User表 :Id username password roleId代码:com.pojo包1.User.javapackage com.hp.pojo;public class User { private int id; private String username; private String password; private int roleId; public User() { } public int getId() { return.

2020-07-21 22:56:37 121

原创 JavaWeb作业(二)

Q1:抽象类为什么不能创建对象答:抽象类中本身就可能含有抽象方法,抽象方法没有方法体,也就是说抽象类中可能含有不具体的内容,而对象必须是一个具体的东西。再者说,抽象类如果可以被实例化,那么就可以通过类名.方法的方式来调用类中的方法,而抽象方法是不具体的方法,不可以被直接调用,这也用反证的思想说明了抽象类不能创建对象。Q2:SQL查询语句关键字的执行顺序答:SQL查询语句的执行顺序1.先执行from关键字后面的语句,明确数据的来源,它是从哪张表取来的。2.接着执行where关键字后面

2020-07-14 19:49:51 246

原创 集合Collection——List

本文介绍集合中的List其实现方式及相关操作,List是一种支持角标操作的集合,我们可以在任意位置去访问元素。其常用的实现子类有ArrayList、LinkedList、Vector及其子类Stack。ArrayList...

2020-05-07 14:22:45 371

原创 Integer类——常用方法及应用举例

xxx

2020-04-17 10:04:48 10539

原创 StringBuilder类—常用方法及应用举例

StringBuilder类当对字符串进行修改的时候,需要使用 StringBuffer 和 StringBuilder 类。和 String 类不同的是,StringBuffer 和 StringBuilder 类的对象能够被多次的修改,并且不产生新的未使用对象。StringBuilder 类在 Java 5 中被提出,它和 StringBuffer 之间的最大不同在于 StringBuil...

2020-04-09 13:40:24 1589

原创 接口

在JAVA编程语言中是一个抽象类型,是抽象方法的集合,接口通常以interface来声明。一个类通过继承接口的方式,从而来继承接口的抽象方法。在JDK7之前 接口中是不可以定义具体函数的在JDK8以后 接口中是可以定义具体函数的(必须是静态的函数 成员函数还是依旧默认抽象的)特点:接口并不是类,编写接口的方式和类很相似,但是它们属于不同的概念。类描述对象的属性和方法。接口则包含类要...

2020-03-25 19:38:20 157

原创 抽象类与接口及其区别(1.8)

抽象类顾名思义,抽象是指从具体事物抽出、概括出它们共同的方面、本质属性与关系等,而将个别的、非本质的方面、属性与关系舍弃的思维过程,在我们生活中很常见,比如,鸡鸭鱼狗,我们可以将其抽象成动物...

2020-03-23 10:37:13 518 1

原创 LeetCode数组(三)

面试题03.数组中重复的数字在一个长度为 n 的数组 nums 里的所有数字都在 0~n-1 的范围内。数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次。请找出数组中任意一个重复的数字。思路:先将数组排序,遍历数组比较当前元素和后一个元素是否相等,相等则说明重复跳出循环直接返回当前元素值。class Solution { public in...

2020-03-21 17:04:10 245

原创 JavaSE继承

当我们在定义若干个类的时候,发现某一些类中具有相同的属性和行为,那么我们就可以将这些相同的部分进行抽取,独立生成另外一个类,那么这个生成出来的类我们称之为是父类,其他的被抽取内容的类称之为子类...

2020-03-20 13:51:01 155

原创 设计模式——单例模式

单例模式单例模式是Java中的一种最简单的设计模式,也就是一种编码技巧,是由广大Java的使用者总结出来的经验之谈!单例模式的使用场景是某一个类只能创建一个对象。这个类提供了一种访问其唯一的对象的方式,可以直接访问,不需要实例化该类的对象。注意:1、单例类只能有一个实例。 2、单例类必须自己创建自己的唯一实例。 3、单例类必须给所有其他对象提供这一实例。1.因为只能创建...

2020-03-19 21:07:00 140

原创 static关键字

Static关键字:从刚接触Java开始我们的第一个程序用到主函数,里面有一个Static关键字,那么他究竟有什么作用用的通过这篇文章陈述一下。被static关键字修饰的方法一般被称为静态方法 没有被static关键字修饰的方法 一般称为非静态方法。同理 被static关键字修饰的成员变量 叫静态的成员变量 ,没有被static修饰的叫非静态成员变量。静态成员变量:如果我们需要...

2020-03-18 18:23:57 419

原创 成员变量与局部变量的区别

什么是成员变量?成员变量就是出现在类的成员位置的“变量”,也就是我们所说的类的属性。它在类的里面,而不在任何方法中。通常我们将其称为属性。什么是局部变量?局部变量也就是出现在类中的 成员方法内 局部位置或者是形参位置的变量,就叫做局部变量。通常我们将其直接称为变量。成员变量与局部变量的区别:1.在内存中的位置(存储位置)不同 局部变量的位置:在栈内存中函...

2020-03-13 15:29:48 206

原创 Java面向过程和面向对象的区别

面向过程与面向对象的区别从一个最通俗的角度出发来说,面向过程我们担任的是执行者的角色,而面向对象中我们是一个指挥者的角色。 面向过程 面向对象 区别 解决问题所需的所有方法都需要自己写, 并按照一定的步骤和顺序执行方法。 解决问题可以将其划分成多个类,各个类 都有自己的方法,即各司其职。我们只需 要创建对象,...

2020-03-13 15:29:17 396

原创 LeetCode数组(二)

1.给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/two-sum思路:暴力法:遍历数组用每个数逐个和target做减法,用得...

2020-03-13 15:28:44 173

原创 NewCode01

1.设 int x[]={1,2,3,4,5,6},*p=x; 则值为 3 的表达式是*p=x这里指针p指向数组的首元素地址,p+=2则指针指向第三个元素,而*++p是前置加加,p先自增,再解引用,就指向第四个元素了 b中为后置加加,是先解引用再加所以不影响,正确, c中p+=3就错了,因为指向第四个元素了 d中++*p,因为*p为3,所以就是++3了,结果为42.如有定义:cha...

2020-02-23 18:46:33 948

原创 LeetCode数组(一)

1.设计一个算法,找出数组中最小的k个数,并从小到大排序后输出。思路:插入排序后新建数组存入前k个元素后返回。class Solution { public int[] smallestK(int[] arr, int k) { int j; for(int i=1;i<arr.length;i++){ int e...

2020-02-23 17:10:00 124

空空如也

空空如也

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

TA关注的人

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