自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

嘻哈怪才的博客

我只写,我懂的!

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

原创 11.MySQL多表查询简介

多表查询与查询概述

2022-11-02 02:56:01 279 1

原创 10.MySQL 约束

常见约束,外键约束

2022-11-02 02:54:19 267

原创 9.MySQL函数

字符串函数,数值函数,日期函数,流程函数

2022-11-02 02:51:45 293

原创 8.MySQL DCL (数据控制语言) 语句

DCL 数据控制语言

2022-11-02 02:49:52 224

原创 7.MySQL DQL(数据查询语言) 语句

DQL 数据查询语言

2022-11-02 02:45:34 81

原创 6.MySQL DML(数据操作语言)(增删改) 语句

DML 数据操作语言

2022-11-02 02:42:24 71

原创 5.MySQL DDL(数据定义语言)语句

DDL 数据定义语言

2022-11-02 02:40:06 71

原创 4.MySQL的数据类型

数据类型

2022-11-02 02:37:48 284

原创 3.MySQL 中 SQL语句分类与通用语法

DCL语句:数据控制语言,创建数据库用户,控制数据库访问权限!· DDL语句:数据定义语言,定义数据库对象(数据库,表,字段)② MySQL语句不区分大小写,【关键字】建议使用【大写】!· DML语句:数据操作语言,对数据表的 【增删改】!· DQL语句:数据查询语言,对数据表的【查询】③ 单行注释:-- 多行注释:/* …① SQL语句可以多行与单行书写,分号结尾;

2022-11-02 02:33:26 80

原创 2.MySQL概述概念与下载

数据库管理系统(Database Management System):是一种操纵和管理数据库的大型【软件】,用于创建,使用和维护数据库;MySQL:是一款经典的开源的关系型数据库;其实MySQL 是一种数据库管理系统;启动:net start mysql80。停止:net stop mysql80。② 磁盘中存储 ---- 安全;SQL:结构性查询语言简称SQL。① SQL语句操作;

2022-11-02 02:30:13 73

原创 1.设计模式概述

包括11种设计模式,模板方法,策略,命令,职责链,状态,观察者,中介者,迭代器,访问者,备忘录,解释器;· 创建型模式:用于描述怎样创建对象,含义是将对象的创建与使用分离,主要包括5种设计模式,单例,原型,工厂方法,抽象工厂,建造者;· 结构型模式:用于描述如何将类或对象按某种布局组成更大的结构,主要包括7种设计模式,代理,适配器,桥接,装饰,外观,享元,组合;设计模式是对面向对象的实际运用,是对类的封装性,继承性,和多态性,以及类的关联关系和组合关系的充分理解;软件设计模式 产生于 建筑领域的设计模式;

2022-10-27 03:33:14 129

原创 1.MySQL 常用语句

常用SQL语句汇总

2022-09-21 23:40:27 2701

原创 4.js运算符,js三目运算符

js运算符单目运算符:自增自减自增 ++ 变量的值每次加1,再赋给变量;自减 – 变量的值每次减1,再赋值给变量;双目运算符:+ 加- 减* 乘/ 除% 求余= 赋值+= 加等-= 减等/= 除等*= 乘等%= 求余等<script>var a = 1;var b = 2;document.write(a+b+"<br>");document.write(a-b+"<br>");document.write(a*b+"&l

2022-04-26 17:50:54 623

原创 3.JS数组类型,js逻辑运算,js关系运算

JS数组类型数组就是和我们之前理解的数组概念一致,而在js这成为Array类型;我们说JSON可以标记一个对象,那么它通向可以标记一个数组,就是java的JSONArray;<script> //js数组类型,使用中括号 var array=[1,2,3,4]; document.write(array); //放js对象放入数组中 var students = [ {id:1,name:"张三",age:18}, {id:2,name:"张二",age:

2022-04-26 17:45:09 771

原创 2.js基本语法,JS变量的基本数据类型,JS引用类型(对象)

js基本语法[1]js声明变量:js中任何变量都是var关键字来声明;结尾是分号;[2]javaScript中的关键字,不可以作为变量名;var a;[3]js中的部分关键字:abstract,else,instanceof,super,boolean,enum,int,switch,break,export,interface,synchronized,byte,extends,let,this,case,false,long,throw,cathch,final,native,thr

2022-04-26 17:28:23 403

原创 1.js简介,JavaScript的组成,js环境搭建

js简介Js原名javaScript,是一种解释性的脚本语言,与java没有关系,是一种动态的,弱类型,基于原型继承的语言,内置支持类型;他的解释器被称为javaScript引擎,作为浏览器的一部分,广泛用于客户端的脚本语言;用来给HTML网页增加动态功能;JavaScript的组成<1>ECMAScript语法<2>文档对象模型<3>浏览器对象模型js环境搭建<1>在html中使用<!DOCTYPE html><h

2022-04-26 17:22:35 1779

原创 135.JDK8新特性介绍;Lambda表达式介绍;方法引用介绍;Stream 简介;新的时间API的使用

JDK8新特性介绍目前主流的企业级jdk还是jdk7或者jdk8;2014年发布了jdk8带来了很大的变化;【新特性】<1>Lambda表达式<2>方法引用<3>Stream<4>时间ApiLambda表达式介绍【作用】简化的匿名内部类,简化代码,让代码紧凑性更强;【格式】(参数)->{抽象的方法实现}【举例】实现线程、比较器接口comparator、函数式接口函数式接口:Functional Interfaces在接口中只有一

2022-02-25 14:52:32 312

原创 134.swing简介;Swing常用组件

Swing简介Swing是JDK1.4之后推出的替代awt的桌面程序组件库;在JDK1.4之前使用的桌面程序组件库,不是java写的,是C\C++ 兼容性不行,稳定性;【Java的三大分支】JavaSE:桌面程序开发;JavaME: 嵌入式开发;JavaEE: 服务端开发;Swing常用组件①布局组件<1>边框布局:把窗口分为五部分;上下所有中;<2>流失布局;<3>卡片布局;<4>网络布局;②常用控件<1>按钮

2022-02-25 14:45:36 553

原创 133.UDP编程

UDP编程【简介】UDP:User Datagram Protocol用户数据报协议。是一种不可靠,面向无连接的传输层通信协议;【特点】<1>面向无连接<2>不可靠传输 :UDP仅仅在数据报的头部,添加了复用和数据校验;<3>每次内容不能超过64KB<4>性能高效【底层】<1>Ftp协议底层udp;<2>Http协议 底层tcp;【java实现UDP】Java支持udp协议,对UDP进行类的封装①Data

2022-02-24 02:02:08 1692

原创 132.TCP编程简介;TCP开发步骤

TCP编程网络模型:传输层:1.TCP 2.UDP【TCP简介】TCP:Transmission Control Protocol 传输控制协议,是一种面向连接、可靠的、给予字节流传输的传输层通信协议;【特点】<1>面向连接;<2>可靠的传输 安全传输;<3>基于字节流;<4>传输大小没有限制;【java实现TCP】Socket:套接字 实现通信的端点 用于描述IP和端口号,是一个通信的句柄。网络通信指的就是Socket之间的通信;常

2022-02-23 01:28:44 897

原创 131.计算机网络简介、IP地址简介与端口号简介;java操作IP地址

计算机网络简介计算机网络:把分布在不同区域的计算机,与专门的外部设备通信互联成为一个规模巨大,而且功能强大,网络系统,从而达到计算机之间可用相互通信;交换资源,共享信息等;<1>网络的分类:更具网络的范围可用分为:广域网、城域网、局域网;<2>网络编程:在网络中,不同机器之间进行通信、编程;<3>网络模型:OSI:Open System Interconnect 开发式系统互联 参考ISO(国际标准组织) 制定一种通用计算机标准体系,七层模型;图片来源于网

2022-02-23 01:14:36 1507

原创 130.线程池

线程池【介绍】线程池可以有效充分利用线程,合理分配资源;<1>可以控制线程的数量;<2>可以避免频繁的创建和销毁线程;<3>可以对线程进行统一的管理;①Executors java封装的创建线程池的工具类,现在已经淘汰 因为很容易引起OOM异常;可以方便的创建如下的线程池:<1>newFixedThreadPool 创建固定线程数量的线程池;<2>newSingleThreadExecutor创建只有一个线程的线程池;&lt

2022-02-22 10:42:42 70

原创 129.线程之间的通信

线程通信【如果线程不通信】【举例】卖包子:边做、变卖;一个人专门做包子,一个人专门卖包子;摊位上最多只能放20个包子;【实现】class Baozi{ //当前的数量 private int currcount; //最大容量 private int maxcount = 20; //做包子 public void make(){ if(currcount<maxcount){ currcount++;

2022-02-22 10:39:10 223

原创 128.单例模式简介

单例模式单例模式:最简单,最广泛的设计模式,可以实现类的唯一实例的创建;目的:保证类的唯一实例;原因:避免频繁创建与销毁的类,可以有效保证性能;核心:私有的构造函数;【单例模式实现方案】<1>懒汉式 缺点:线程不安全<2>饿汉式 :线程安全 但占用资源大class ThreadMain{ //单例模式懒汉式 //私有的构造方法 private ThreadMain(){}; //私有的静态实例对象 private stati

2022-02-21 11:53:31 149

原创 127.设计模式及其分类

设计模式的分类设计模式根据模式类型分为三大类<1>创建模式<2>结构型模式<3>行为型模式[1]创建模式:用来创建类的实例的设计模式 5 种; 简单工厂模式 抽象工厂模式 单例模式 建造者模式 原型模式[2]结构型模式:结合之后产生新的功能 7种; 装饰者模式 适配器模式 过滤器模式 代理模式 外观模式 享元模式 组合模式[3]行为模式:实例之间的通信 11种; 命令模式 责任链模式 迭代器模式 中介模式 观察者模式 模板模式 策略模式 访问

2022-02-21 11:49:09 701

原创 126.死锁简介

死锁【介绍】多个线程,每个线程都拥有对方需要的资源,程序运行,但是每个线程都进入到了阻塞,无法继续;而产生的一种现象;【具体原因】每个线程拥有其他人需要的资源,同时有需要其他线程的资源,在每个线程没有获取到自己资源的时候,都不会放弃已有的资源;【产生条件】<1>多个线程: 2个以上的线程;<2>多个锁:2个以上的锁;<3>同步代码块嵌套同步代码块;【注意】锁不能乱用;class Panda{ //代码实现死锁 //开锁资源 p

2022-02-21 11:45:15 57

原创 125.Lock锁的应用;Synchronized和lock的区别

Lock的应用Lock锁的性能要比synchronized高,但是lock要求必须手动释放锁;语法格式:try{ xxx.lock(); //要保护的代码 }finally{ xxx.unlock(); }lock是个接口,常用的是实现类,ReentrantLockclass ThreadMain{ public static void main(String[] args) { //演示lock锁 Runnable runnable = new Run

2022-02-21 11:43:37 208

原创 124.线程的安全:synchronized锁的应用;

线程的安全【示例】模拟窗口卖票,2个窗口同时在卖100张火车票,每张票间隔50毫秒;@Dataclass Ticket{ //票号 private int no; //车次 private String car;}class TicTunnable implements Runnable{ //常量 //最大的票号 private int max = 100; //当前的票号 private int curr = 0;

2022-02-21 11:39:54 3697

原创 123.线程的停止,如何停止线程?

线程的停止,如何停止线程?stop自带安全隐患,已经过时![1]通过控制run()方法,达到控制线程终止的方式;class Demo3 extends Thread{ //通过控制run方法,达到控制线程终止的方式 private boolean isrun; public boolean isIsrun(){ return isrun; } public void setIsrun(boolean isrun){ this.is

2022-02-14 17:02:58 195 1

原创 122.Thread类线程方法汇总;线程的启动方法为什么是start() 不是run()?

Thread类线程方法汇总<1> currentThread 获取当前线程对象;<2>getName 获取线程的名称;<3>setName设置线程;<4>getId获取线程的ID唯一性,系统自动分配;<5>setDaemon设置是否为后台线程;<6>isDaemon线程是否为后台线程;<7>setPriority设置优先级;<8>getPriority获取优先级;<9>start启

2022-02-14 17:01:06 1347

原创 121.线程调度:join()方法与yield()方法

线程调度【介绍】线程调度是指【凡是可以影响线程】的【状态】的方法,就成为调度方法;【方法】<1>start新建 --> 就绪<2>sleep 运行 --> 阻塞 会抛出编译异常,需要捕获;<3>join 加入、合并 运行 --> 阻塞<4>yield 礼让 运行 --> 就绪<5>wait 等待 运行 --> 阻塞<6>notify/nofifyall 唤醒 阻塞 --> 就绪

2022-02-14 16:59:22 691

原创 120.Lambda表达式的简介

Lambda表达式【介绍】Lambda是JDK8之后支持的一种简写模式。可以快速的实现接口的实例化;【格式】(参数) -> {方法重写}【规则】1.必须是一个接口;2.接口中只能有一个抽象方法;3.Lambda表达式的结果是一个对象;class Demo{ public static void main(String[] args) { //Lambda表达式演示 //等号右边一定要有 Demo10 demo10 = ()-&

2022-02-07 18:53:42 157

原创 119.线程的优先级

线程的优先级【介绍】线程的优先级就是线程获得CPU的概率,优先级越高,获取CPU的概率越大;从小到大,1-10之间,10是优先级最高,默认的优先级是5;【设置优先级】通过线程的setPriority设置线程的优先级;通过线程的getPriority获取线程的优先级,设置优先级需要在start之前设置;class Panda{ public static void main(String[] args) { //设置线程的优先级 //实现Runnable接口

2022-02-07 18:51:46 219

原创 118.线程的分类

线程的分类线程主要分为用户线程和守护线程;【举例】主线程和GC线程就是经典-用户线程和守护线程,GC线程守护主线程;【特点】守护线程:当守护线程的用户线程销毁的时候,守护线程也会跟着消亡,无论守护线程是否执行结束都会随着用户线程一起销毁;class Panda{ public static void main(String[] args) { //用户线程与守护线程 //默认的是用户线程 //实现Runnable接口 Run

2022-02-07 18:49:59 444

原创 117.线程的生命周期与状态

线程的生命周期与状态线程有五大状态:新建、就绪、运行、阻塞、销毁<1>新建:实例化线程对象的时候,就是新建状态;<2>就绪:当我们调用线程start方法之后,线程就会进入就绪状态;处于该状态的线程,随时都可以获取CPU调度;<3>运行:线程获取CPU的调度之后,线程抢到了时间片,可以用来运行自己的任务;<4>阻塞:当线程因为资源竞争,或主动方法调用,让线程进入阻塞;常见的方法有:sleep,wait,join<5>销毁:当线程run方

2022-02-07 18:48:30 303

原创 116.实现多线程的几种方式;继承Thread类实现多线程;Callable接口实现多线程

实现多线程的几种方式<1>实现Runnable接口;(已举例)<2>自定义类实现Thread类的子类,重写run方法;<3>实现Callable接口继承Thread类实现多线程创建类继承Thread 并重写run方法class Panda extends Thread{ @Override public void run(){ //重写run方法 System.out.println("继承Thread类实现

2022-02-07 18:45:48 1577

原创 115.线程与进程介绍;Runnable接口多线程的创建;线程类Thread的run()方法与start()方法的区别

线程与进程介绍【进程】软件在运行时一种状态,会占用CPU内存等号资源;【进程特点】<1>独立性<2>动态性<3>并发性【线程】<1>代码的执行路径,是进程的组成部分,一个进程可以有多个线程,每个线程都可以执行自己的内容或者多个线程共同执行一个任务;有了多线程,可以同时干多件事情;<2>线程是CPU的最小调度单位,CPU可以很快的在多个线程间实现切换;<3>运行时的线程,随时都可以被CPU给挂起;<4

2022-02-07 18:36:18 250

原创 114.反射之Field类对象;反射的作用

反射之Field类对象【获取成员变量】通过Class对象获取Field成员变量方法<1>Field[] getFields(); 获取类内所有【非私有化】【成员变量】【数组】;<2>Field[] getDeclaredFields(); 获取类内【所有成员变量数组】,【包括私有化成员变量】【暴力反射】<3>Field getField(String fieldName); 根据【成员变量】【名字】,获取类内【非私有化】成员变量;<4>Field

2022-01-30 03:13:32 899

原创 113.通过Method对象执行方法

通过Method对象执行方法【方法】Object invoke(Object obj,Object... parameters);【重中之重】①obj:执行调用当前方法的类对象;②parameters:不定长参数,当前方法执行所需的实际参数,要求符合形式参数列表要求参数类型,个数和顺序;③返回值类型Object方法执行过程中可能会存在返回值,也有可能是void,Object表示所有,后期使用过程中可以按照自己的需求进行数据类型强制转换;class Panda{ public stat

2022-01-30 03:10:19 670

原创 112.私有化构造方法操作;获取Method类对象;通过Class类对象获取Method对象方法

私有化构造方法操作直接操作使用对应私有化构造方法Constructor类对象,是没有权限操作的,因为private修饰。但是反射【为所欲为!!!不破不立!!!】这里可以给予私有化内容操作权限;void setAccessibe(boolean flag); 该方法是可以通过【Constructor构造方法,Method成员方法,Field成员变量】调用,给予暴力反射私有化内容类外操作权限;获取Method类对象【重点】①成员方法的内容:<1>返回值类型;<2>方法名;

2022-01-29 01:07:59 1289

空空如也

空空如也

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

TA关注的人

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