自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

qq_44104879的博客

一个爱好代码的皮蛋

  • 博客(26)
  • 收藏
  • 关注

原创 Centos7下安装配置redis集群哨兵模式(简单明了)

Centos7下安装配置redis集群哨兵模式

2022-08-19 11:43:40 1554

原创 redis安装教程(简明扼要,一看就懂)

简明扼要,一看就懂--- redis 安装教程

2022-08-19 11:32:03 18491 1

原创 Java多线程(三)-- 线程的状态和方法

线程状态 线程有五大状态:创建状态、就绪状态、阻塞状态、运行状态、死亡状态; new(创建状态):线程对象一旦创建就进入到了新生状态; 就绪状态:当调用 start() 方法启动线程,线程立即进入就绪状态,但是不意味着立即调度执行; 运行状态:当就绪状态的线程获取到cpu资源时,线程才进入运行状态,真正执行线程体的代码块; 阻塞状态:当调用 sleep,wait 或同步锁定时,线程进入阻塞状态,代码不再继续执行,阻塞事件解除之后,转到就绪状态等待调度; 死亡状态:线程中断或者自然结束后,就会进入死亡状态,

2021-11-16 16:34:12 893

原创 Java多线程(二)-- Lambda表达式的推导

Lambda表达式 lambda表达式只能有一行代码的情况下才能简化成为一行, 如果有多行,那么就用代码块包裹; 前提是接口为函数式接口(任何接口,有且仅有一个抽象方法但是可以有多个非抽象方法的接口,就是函数式接口); 多个参数也可以去掉参数类型,要去掉就都去掉,必须加上括号; public class Test1 { //3.静态内部类 static class Like2 implements ILike{ @Override public void

2021-11-15 14:25:10 713

原创 Java多线程(一)--线程创建

多线程 进程(process),程序是指令和数据的有序集合,其本身没有任何运行的含义,是一个静态的概念。而进程则是执行程序的一次执行过程,它是一个动态的概念,是系统资源分配的单位。 通常在一个进程中可以包含若干个线程(thread),当然一个进程中至少有一个线程,不然没有存在的意义。线程是 CPU 调度和执行的单位。 线程就是独立的执行路径;在程序运行时,即使没有自己创建线程,后台也会有多个线程,如主线程,gc 线程(垃圾回收线程)等等; main() 称之为主线程,为系统的入口,用于执行整个程序;在一个

2021-11-08 15:22:54 667

原创 Java面向对象--异常类

异常类 Throwable 类是 Java 语言中所有错误或异常的超类,Exception类和Error类就是它的子类; 在Exception分支中有一个重要的子类RuntimeException (运行时异常)包括: ArrayIndexOutOfBoundsException (数组下标越界) NullPointerException (空指针异常) ArithmeticException (算术异常) MissingResourceException (丢失资源) ClassNotFoundE

2021-11-06 09:29:12 545

原创 Java面向对象--匿名内部类的详解

匿名内部类 匿名内部类可以使代码更加简洁,可以在定义一个类的同时对其进行实例化。它与局部类很相似,不同的是它没有类名,如果某个局部类你只需要用一次,那么你就可以使用匿名内部类,这样方便又简洁。 匿名内部类的特点就是不用再构造一个类,对比一下: //定义一个动物类 class Animals{ public void eat(){ System.out.println("动物要吃东西"); } } //实现类 public class Demo { public

2021-01-26 18:26:48 616

原创 Java面向对象--四种内部类

内部类 内部类就是在一个类的内部在定义一个类,比如A类里定义一个B类,那么B相对于A为内部类,A相对于B为外部类。 一个Java文件中可以有多个类,但是只能有一个public类 成员内部类 成员内部类是最普通的内部类,它的定义为位于另一个类的内部; public class Outer { private int id; public void out(){ System.out.println("这是外部类方法"); } public cl

2021-01-26 18:24:02 563

原创 Java面向对象--接口详解

接口 普通类 只有具体实现 抽象类 具体实现和规范(抽象方法)都有! 接口 只有规范!只有约束! 接口就是规范,定义的是一组规则,接口的本质是契约,制定好了以后必须遵守! 声明类的关键字是class,声明接口的关键字是interface; 接口不能被实例化~,接口都需要有实现类(关键字implements); 接口中定义的变量都是静态常量;接口中定义的所有方法都是abstract抽象的,无法写方法体,还都是public的(可以不写public); 实现类的命名一般是在接口名后面加I

2021-01-26 18:22:05 556

原创 Java面向对象--Java中的抽象类

抽象类 abstract修饰符可以用来修饰方法也可以修饰类,如果修饰方法,那么该方法就是抽象方法;如果修饰类,那么该类就是抽象类。 抽象类:不能使用new关键字来创建对象,它是用来让子类继承的。 抽象方法:只有方法的声明,没有方法的实现,它是用来让子类实现的。 抽象类中可以没有抽象方法,但是有抽象方法的类一定要声明为抽象类。 子类继承抽象类,那么就必须要实现抽象类没有实现的抽象方法,否则该子类也要声明为抽象类。 //抽象类 public abstract class A { //abstract

2021-01-26 18:20:34 537

原创 Java面向对象--多态详解、instanceof、强制类型转换

多态:同一方法可以根据发送对象的不同而采用多种不同的行为方式。 一个对象的实际类型是确定的,但可以指向对象的引用的类型有很多。(父类,等等) 例子: //父类Person public class Person { public void run(){ System.out.println("run"); } public void A(){ System.out.println("Person"); } } //子类Student pu.

2021-01-13 19:39:50 157

原创 Java面向对象--继承、重写

继承: 继承的本质是对某一批类的抽象,关键字:extands“扩展”,子类就是父类的扩展。 Java中类只有单继承,没有多继承! 继承是类和类之间的一种关系,当然类中除了继承还有依赖、组合、聚合等等。 继承关系的两个类,一个是子类(派生类),一个是父类(基类)。子类继承父类,具有“is a”关系。 子类继承了父类的方法就会拥有父类的方法、属性(私有的不能继承,其他的修饰符参照封装中的修饰符权限) //继承Person public class Student extends Person { } 主

2021-01-11 18:49:03 203 5

原创 Java面向对象--封装的详解

程序设计要追求"高内聚,低耦合”。 高内聚就是类的内部数据操作细节自己完成,不允许外部干涉; 低耦合:仅暴露少量的方法给外部使用。 封装(数据的隐藏):通常,应禁止直接访问一个对象中数据的实际表示,而应通过操作接口来访问,这称为信息隐藏。封装主要体现属性的私有,还有就是get/set方法。 封装的意义: 提高程序的安全性,保护数据; 隐藏代码的实现细节,防止程序被篡改; 统一程序的接口; 增加系统的可维护性。 属性私有: 通过private关键字将属性私有化,这样外部类就无法访问私有化后的属性了,.

2020-12-17 13:03:01 126 2

原创 Java面向对象--构造器、构造方法、Java演示

构造器 类中的构造器也称为构造方法,是在进行创建对象的时候必须要调用的。并且构造器有以下俩个特点: 必须和类的名字相同; 必须没有返回类型,也不能写void; 构造器必须要掌握!!! 隐式定义:一个类即使什么都不写,它也会存在一个构造方法! 显示定义:和类的名字相同,没有返回类型; public class Person(){ //无参构造 public Person(){ } } 作用:使用new关键字,本质是在调用构造器;构造器用来初始化值;根据类型为对象提供默

2020-12-09 21:39:38 139

原创 Java面向对象--类与对象的关系、创建初始化对象

类与对象的关系 类是一种抽象的数据类型,它是对某一类事物整体描述/定义,但是并不能代表某一个具体的事物。例如:Person类、Pet类、Car类等,这些类都是用来描述/定义某一类具体的事物应该具备的特点和行为。 对象是抽象概念的具体实例:能够体现出特点,展现出功能,是具体的实例,而不是一个抽象的概念。例如:张三就是人这个类的实例,是一个有特点的人。 创建与初始化对象 使用new关键字创建对象!!! 使用new关键字创建的时候,除了分配内存空间之外,还会给创建好的对象进行默认的初始化以及对类中构造

2020-12-09 21:36:58 175 2

原创 Java--面向对象,静态方法

面向对象 Java的核心思想就是oop面向对象编程 面向过程&面向对象 面向过程思想: 步骤清晰简单,第一步做什么,第二步做什么… 面对过程适合处理一些较为简单的问题 面向对象思想: 分类的思维模式,思考问题首先会解决问题需要哪些分类,然后对这些分类进行单独思考。最后,才对某个分类下的细节进行面向过程的思索。 面向对象适合处理复杂的问题,适合处理需要多人协作的问题! 面向过程和面向对象是相互配合的,从宏观整体上,我们需要使用面向对象的思路来分析整个系统;在微观操作上,就需要面向过程的思路去

2020-12-09 21:27:48 156

原创 Java--稀疏数组的定义和转化

稀疏数组 什么是稀疏数组:稀疏数组也是一种数据结构,当一个数组中大部分元素为0,或者为同一值的数组时,可以使用稀疏数组来保存该数组。 稀疏数组的处理方式是: 记录数组一共有几行几列,有多少个不同值; 把具有不同值的元素和行列及值记录在一个小规模的数组中,从而缩小程序的规模,大大节约数组空间。 在了解稀疏数组之前先了解一下稀疏矩阵,把数组看成矩阵,其实稀疏数组就是由稀疏矩阵转化而来。 左图就可以看成一个数组,它属于稀疏矩阵,右图就是稀疏数组; 在二维数组中,稀疏数组只有三列,分别

2020-12-03 21:48:47 98

原创 数组八大排序之冒泡排序(零基础都能懂的详解-附图)

冒泡排序 在八大排序中,冒泡排序是最为出名的排序算法之一! 冒泡排序的代码还是相当简单的,两层循环,外层是冒泡轮数,里层是依次比较,这个算法的时间复杂度为O(n2); 冒泡排序的思想: 比较数组中相邻的两个元素,如果第一个数比第二个数大,就交换它们的位置 每一次比较都会产生一个最大或最小的元素 下一次循环就只排序剩下的元素 依次循环,直到所有元素排序完成 通过实例理解: public static void main(String[] args) { int[] a={55,45,33,2

2020-12-03 21:06:00 967 2

原创 java数组--数组的声明、创建、初始化、特点,多维数组,Arrays类

java数组数组的定义数组的声明和创建数组的三种初始化数组边界,特点多维数组Arrays类 数组的定义 数组是相同类型数据的有序集合; 数组描述的是相同类型的若干个数据,按照一定的先后次序排列组合而成。 其中,每一个数据称作一个数组元素,每个数组元素可以通过一个下标来访问它们. 数组的声明和创建 首先必须声明数组变量,才能在程序中使用数组; Java语言使用new操作符来创建数组; 数组的元素是通过索引访问的,数组的索引从0开始,比如十个元素的数组,索引是0~9; 获取数组的长度:(数组名.lengt

2020-12-02 21:35:04 155

原创 java 方法-方法的定义、调用、静态方法、重载、可变参数和递归

java 方法1.什么是方法!2.方法的定义和调用3.方法的重载4.可变参数5.递归调用 1.什么是方法! Java方法是语句的集合,它们在一起执行一个功能。 方法是解决一类问题的步骤的有序组合 方法包含于类或对象中 方法在程序中被创建,在其他地方被引用 设计方法的原则:方法的本意是功能块,就是实现某个功能的语句块的集合。我们设计方法的时候,最好保持方法的原子性,就是一个方法只完成一个功能,这样利于我们后期的扩展。 2.方法的定义和调用 方法的定义: Java的方法类似于其它语言的函数, 是一

2020-11-29 14:24:54 140

原创 用Java for循环打印出九九乘法表

用Java for循环打印出九九乘法表 从代码第一个for循环可以看出来,它控制了九九乘法表的列数,从i=1开始,每执行一遍就会调用一边内层for循环并进行一次换行,直到第九行打印完,至此打印出九行; 每次调用的内层for循环,根据外层行数确定循环次数(j<=i),从而得到每一行里乘法的个数,并且通过“\t”空出缝隙来对齐。(记得把“print‘ln’”换行去掉) 代码: public class ForDemo02 { public static void main(String[] a

2020-11-27 21:04:19 2491 2

原创 java流程控制-Scanner,顺序、选择、循环结构,break,continue

java流程控制1.Scanner对象2.顺序结构3.选择结构4.循环结构while循环do...while循环for循环增强for循环5.break continue 1.Scanner对象 实现程序和人的交互,Scanner类可以获取用户的输入,Java.util.Scanner是java5的新特性; 基本语法格式:Scanner s = new Scanner(System.in); 通过Scanner类的next()与nextLine(方法获取输入的字符串,在读取前我们一般需要使用hasNext(

2020-11-26 21:29:57 137

原创 java基础语法--注释、标识符、关键字、数据类型、类型转换、变量、常量、作用域、运算符

java基础语法1.注释、标识符、关键字2.数据类型3.类型转换4.变量、常量、作用域5.运算符 java基础语法 1.注释、标识符、关键字 注释 在代码较少时,我们还可以看懂,但是当项目结构一旦复杂起来,我们就需要用到注释。 注释不会被执行,是写给写代码的人看的,更好理解代码的意思,书写注释是一个非常好的习惯。 java中的注释有三种: 单行注释 多行注释 文档注释 设置注释的颜色: public static void main(String[] args) .

2020-11-24 23:46:20 231

原创 GUI编程,AWT,Swing

文章目录GUI编程1、简介2、AWT2.1、AWT介绍2.2、组件和容器1.Frame2.面板 Panel3.布局管理器 GUI编程 组成: 窗口 弹窗 面板 文本框 列表框 监听事件 鼠标键盘事件 写破解工具 1、简介 GUI的核心技术:swing、AWT GUI目前几乎被淘汰,其中原因主要是: 界面太不美观。 需要下载比较大的jre环境。 GUI学习下来的作用: 可以写出一些自己想要的小工具。 工作的时候,可能需要维护swing界面。 了解MVC架构,了

2020-11-17 19:16:54 255 2

原创 JDK安装和配置,IDEA安装

JDK安装和配置,IDEA安装卸载JDK安装JDK安装IDEA 卸载JDK 进入控制面板删除或者用卸载软件卸载(这样直接把注册表信息删除掉)。 绿色软件包里的JDK直接删除掉。 把安装目录JDK文件夹直接删掉,清理环境变量,JAVA_HOME删除、Path里面和JAVA_HOME相关的删除。 在DOS命令窗口输入java -version检测。 安装JDK 百度搜索下载 选择目录路径安装 配置环境变量 我的电脑->右击属性->高级系统设置 环境变量->系统变量

2020-11-10 21:20:16 200 1

原创 MarkDown常用语法学习

MarkDown常用语法学习 推荐用Typora软件进行日常总结记录,CSDN中也是用MarkDown编辑器编写博客。 Typora官网 1.标题 一级标题:“ #+空格 ”; 二级标题:“ ##+空格 ”; … 以此类推; 2.字体 public public public public 粗体:“ 两边加** ”; 斜体:“ 两边加* ”; 斜体加粗:“ 两边加*** ”; 删除线:“ 两边加~~ ”(数字1左边的符号); 3.引用 百度搜索 “ 大于号+说明文字 ”; 4.分割线 “ ‘- -

2020-10-29 19:05:29 82

空空如也

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

TA关注的人

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