Java
文章平均质量分 58
深巷的猫~
在挣扎的边缘徘徊中.......
展开
-
IntelliJ IDEA安装配置
IntelliJ IDEA安装配置原创 2021-06-01 16:24:39 · 286 阅读 · 1 评论 -
缓存(redis)—interview
redis1)redis本质是一个key-value类型的内存数据库2)redis有五个基本数据结构:string,Hhash,list,set,zset3)一个字符串类型的值能存储最大容量是多少?512M4)redis适用于哪些场景?a.会话缓存b.全页缓存c.队列d.排行榜/计数器e.发布/订阅5)redis集群之间是如何复制的?异步复制6)redis集群最大节点个数是多少?16384个7)redis优点:a.速度快,因为数据存储在内存中b.支持丰富的数据类型,5个数据类型原创 2021-03-11 18:20:42 · 138 阅读 · 0 评论 -
网络
1、TCP1)TCP建立连接三次握手a.第一次握手:客户端发送syn包到服务器端,进入syn_send状态,等待服务器端的确认;b.第二次握手:服务器端收到客户端的syn包,发送syn+ack包给客户端,进入syn_recv状态;c.第三次握手:客户端收到服务器端的syn+ack包,发送个ack包到服务器端,至此,客户端与服务器端进入established状态。握手过程中传送的包不包含任何数据,连接建立后才会开始传送数据,理理想状态下,TCP连接一旦建立,在通信双方的任何一方主动关闭连接前,TCP原创 2021-03-11 18:06:59 · 99 阅读 · 0 评论 -
RabbitMQ
RabbitMQ1、定义高级消息队列协议,是应用层协议的一个开放标准,为面向消息的中间件设计。消息中间件主要用于组件之间的解耦,消息的发送者无需知道消息使用者的存在,反之亦然。AMQP的主要特征是面向消息、队列、路由(包括点对点和发布/订阅)、可靠性、安全。RabbitMQ是一个开源的AMQP实现,服务器端用Erlang语言编写,支持多种客户端,如:Python、Ruby、.NET、Java、JMS、C、PHP、ActionScript、XMPP、STOMP等,支持AJAX。用于在分布式系统中存储转原创 2021-03-11 17:57:58 · 115 阅读 · 0 评论 -
多线程
多线程目录多线程1、线程安全和线程不安全的区别2、乐观锁和悲观锁3、线程池4、多线程的上下文切换?5、线程的五个状态(创建,就绪,运行,阻塞和死亡)6、wait()和sleep()的区别?7、死锁8、活锁1、线程安全和线程不安全的区别a.线程安全: 就是多线程访问时,采用了加锁机制,当一个线程访问该类的某个数据时,进行保护,其他线程不能进行访问,直到该线程读取完,其他线程才可使用。不会出现数据不一致或者数据污染。Vector是用同步方法来实现线程安全的, 而和它相似的ArrayList不是线程安全原创 2021-03-11 16:56:16 · 477 阅读 · 1 评论 -
认识MyBatis与Mybatis-plus及两者的区别
一、认识Mybatis MyBatis 是持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 POJOs(Plain Ordinary Java Object,普通的 Java对象)映射成数据库中的记录。1、功能架构Mybatis的功能架构分为三层原创 2020-06-14 17:53:51 · 25829 阅读 · 4 评论 -
Java面试题汇总(最新版)
1、类和对象的关系类是对象的抽象,而对象是类的具体实例。类是抽象的,不占用内存,而对象是具体的,占用存储空间。2、面向过程和面向对象的区别(1)编程思路不同: 面向过程以实现功能的函数开发为主,而面向对象要首先抽象出类、属性及其方法,然后通过实例化类、执行方法来完成功能。(2)封装性:都具有封装性,但是面向过程是封装的是功能,而面向对象封装的是数据和功能。(3)面向对象具有继承性和多态性,而面向过程没有继承性和多态性,所以面向对象优势是明显。3、this和super关键字的作用(1)this是原创 2020-11-03 19:56:35 · 232 阅读 · 0 评论 -
Java定义数组方式(一维、二维数组)
1、数组定义:所谓数组,就是一个有序的元素序列。若将有限个类型相同的元素变量集合命名,那么数组的名就是定义的名称。组成数组的各个变量就是数组的元素,用来区分数组的各个元素的数字编号成为下标特点:数组是相同类型的元素的集合数组中的个元素的存储是有先后顺序的,他们在内存中按照先后顺序连续存放在一起。数组元素用整个数组的名字和它自己在数组中的顺序位置来表示。数组的下标不能超出Long数据类型的有效范围2、一维数组定义(1)数据类型[] 变量名 = new 数据类型[长度]; int[] ar原创 2020-09-25 10:43:28 · 1664 阅读 · 0 评论 -
继承、Super、重写、抽象类
一、继承1、定义1)类是对对象的抽象,继承是对某一批类的抽象,从而实现对现实世界更好的建模;2)提高代码的复用性;3)extands的意思是“扩展”,子类是父类的扩展;4)不同的叫法:超类、父类,基类、子类、派生类。2、如何使用集成——编写父类class Pet{ //公共的属性和方法}class Dog extends Pet{ //子类特有的属性和方法}——编写子类,继承父类class Penguin extends Pet{}注意:子类只能集成一个父类,即单继承原创 2020-08-19 14:30:19 · 199 阅读 · 0 评论 -
git应用——上传文件到华为云
上传文件到华为云1、点击桌面右键,选择“Git Base Here”,进入后,切换到指定目录,先将项目拉取到本地,形成本地仓库2、就需要上传的文件复制到该项目目录下3、给上传的新文件添加备注,并将新文件上传到华为云4、登录华为云,查看是否上传成功...原创 2020-03-10 13:23:40 · 464 阅读 · 0 评论 -
GUI快速入门
一、GUI介绍1、GUI概述图形用户界面(Graphical User Interface,简称 GUI,又称图形用户接口)是指采用图形方式显示的计算机操作用户界面。在GUI编程中,顶层的根窗口包含组成GUI应用的所有小窗口对象,他们可能是文字标签,按钮,列表框等,这些独立的GUI组件称为控件。2、Java提供了三个主要包坐GUI开发java.awt 包 – 主要提供字体/布局管理器j...原创 2019-11-08 09:06:00 · 1298 阅读 · 0 评论 -
Java中几种排序算法
1、冒泡排序算法通过多次比较(相邻两个数)和交换来实现排序public class bubble { public static void bubbleSort(int[] a) { int temp; for (int i = 1; i < a.length; i++) { //将相邻两个数进行比较,较大的数往后冒泡 fo...原创 2019-10-07 15:43:02 · 5111 阅读 · 10 评论 -
Java常用算法(基础)
1、计算n的阶乘import java.util.Scanner;public class jie { public static void main(String[] args) { int w; System.out.print("请输入一个整数:"); Scanner sc = new Scanner(System.in); //开启监听键盘动作 w=sc.next...原创 2019-10-06 13:28:02 · 321 阅读 · 0 评论 -
MySQL、SQL Server、Oracle三者之间的区别
一、MySQLMySQL 是一个关系型数据库管理系统,由瑞典 MySQL AB 公司开发,目前属于 Oracle 公司。MySQL 是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。1、优点(1)体积小、速度快、总体拥有成本低,开源。(2)支持多种操作系统。(3)是开源数据库,提供的接口支持多种语言连接操作 。...原创 2019-09-22 22:32:01 · 5783 阅读 · 2 评论 -
Java基础
一、基础语法1、注释 单行注释:// ,多行注释:/注释内容/2、关键字(特征:字母全小写,有特殊颜色标记)3、常量 程序与逆行过程中不会改变;分类:字符串常量、整数常量、小数常量、布尔常量、空常量(不能直接输出)4、数据类型 基本数据类型5、变量(变量存储在内存中)变量定义格式:变量名、数据类型、变量值变量的使用:取值(a)和修改值(a=20)6、标识符 由字母、字母...原创 2019-07-03 14:45:00 · 104 阅读 · 0 评论 -
JDBC操作基本流程
一、JDBC定义:JDBC(Java DataBase Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC操作基本流程1、加载JDBC驱动程序(1) Class.forName(“com.mysql.jdbc.Driver”);这种的方式,不会对详细的驱动类产生依赖...原创 2019-09-13 17:17:17 · 832 阅读 · 0 评论 -
Java面试题及解析(进程)
1、进程与线程的区别 ?进程是一个程序的执行(即正在运行的程序), 然而线程是在进程中独立的执行序列; 一个进程可以包含很多线程,线程有时被称为轻量级的进程。2、创建线程的不同方式, 哪种方式好?有三种创建线程的方式:继承Thread类、实现Runnable接口、通过Executor框架创建线程池。实现Runnable接口较好; 因为它不需要继承Thread类,当你的程序设计需要多继承时,...原创 2019-09-14 11:41:43 · 238 阅读 · 0 评论 -
Java构造函数
构造方法的特点:1.构造方法名和类名必须保持一致2.构造方法没有返回值,连void都没有3.方法体中不能有return返回结果4.构造方法为成员变量快速初始化5.构造方法结合 new 关键字用来分配内存空间6.构造方法不能被继承,但可以重载7.如果你没有书写任何的构造方法,那么系统会自动提供一个默认构造方法如何来使用构造方法1.通过关键字new,和创建对象是一样2.通过关键字t...原创 2019-09-16 18:18:17 · 302 阅读 · 0 评论 -
SSM框架(定义、作用、工作原理及使用方法)
SSM框架是 spring、spring MVC和mybatis框架的整合,是标准的MVC模式,将整个系统划分为四层:表现层,controller层,service层,DAO层。作用:spring实现业务对象管理spring MVC负责请求的转发和视图管理mybatis作为数据对象的持久化引擎原理:Spring:接触的IOC容器,它可以装载bean(如Java中的类,也包括service...原创 2019-09-17 20:45:01 · 7808 阅读 · 0 评论 -
Java中几种常用设计模式
一、介绍设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。二、设计模式分类创建型模式,五种,即工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。结构型模式,:七种,即适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。行为型模式,...原创 2019-09-19 18:30:03 · 269 阅读 · 0 评论 -
MVC框架模式(定义、工作流程)
1、定义Android程序开发采用了当今流行的MVC模式,即(Model-View-Controller)。M:Model,模型,项目中数据处理(业务逻辑处理)单元。适合做一些业务逻辑处理,比如数据库存取操作,网络操作,复杂的算法,耗时的任务等都在model层处理。V:view,视图,项目中结果展示的单元(模板文件)。视图层中处理数据显示的部分,XML布局可以视为V层,显示Model层的数据...原创 2019-09-19 21:00:02 · 6714 阅读 · 1 评论 -
B/S框架与C/S框架异同
一、B/S框架1、定义 B/S(Brower/Server,浏览器/服务器)模式又称B/S结构,是Web兴起后的一种网络结构模式。Web浏览器是客户端最主要的应用软件。这种模式统一了客户端,将系统功能实现的核心部分集中到服务器上,简化了系统的开发、维护和使用。客户机上只需要安装一个浏览器,服务器上安装SQL Server, Oracle, MySql等数据库;浏览器通过Web Server...原创 2019-09-21 14:00:00 · 4136 阅读 · 0 评论 -
双色球案例(Java代码)
双色球案例说明及要求实现代码如下:package com.pratice;import java.util.*;public class Balls { public static void main(String[] args) { //定义一个数组,存放系统随机生成的6个红色球号码 int[] sysRedBall = new int[6]; //定义一个整数,存放系统...原创 2019-06-27 17:17:01 · 16769 阅读 · 3 评论