
java基础
文章平均质量分 84
曳空@竹
这个作者很懒,什么都没留下…
展开
-
02Java高级JUC之阻塞队列、线程池
1、Callable&Future 接口1.1、Callable 接口目前我们学习了有两种创建线程的方法-一种是通过创建Thread类,另一种是 通过使用Runnable创建线程。但是,Runnable缺少的一项功能是,当线程 终止时(即run()完成时),我们无法使线程返回结果。为了支持此功能, Java中提供了Callable接口。现在我们学习的是创建线程的第三种方案—Callable接口Callable接口的特点如下:(1)为了实现Runnable,需要实现不返回任何内容的run()原创 2022-03-09 08:37:26 · 577 阅读 · 0 评论 -
01Java高级JUC之多线程概述
1、JUC概述1.1、什么事jucjuc是java.util.concurrent(java并发编程)工具包的简称,这是一个处理线程的工具包,jdk1.5开始出现1.2、进程、线程进程进程是计算机中程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础。在当代面向线程设计的计算机结构中,进程是线程的容器.线程线程(thread) 是操作系统能够进行运算调度的最小单位。它被包含在进程之 中,是进程中的实际运作单位。一条线程指的是进程中一个单一顺序的控制流, 一个原创 2022-03-07 23:59:04 · 199 阅读 · 0 评论 -
023Java基础之网络编程
1、 网络的相关概念1.1、 网络通信概念两台设备之间通过网络实现数据传输网络通信将数据通过网络从一台设备传输到另外一台设备java.net包下提供了一系列的类和接口,供程序员使用,完成网络通信1.2、网络概念两台或多台设备之间通过一定物理设备连接起来构成网络1.3、ip地址概念用来表示网络中的唯一一台计算机2、 InetAddress 类2.1、相关方法(1)getLocalHost() 获取本机InteAddress对象(2)getByName()根据指定主机名/域名获取ip地址原创 2022-03-05 17:14:38 · 583 阅读 · 0 评论 -
023Java基础之IO
1、IO 流原理及流的分类1.1、Java IO 流原理(1)I/O是Input和Output的缩写,I/O技术是非常使用的技术,用于处理数据传输,如读写文件,网络通讯等(2)Java程序中,对于数据的输入/输出操作以流(Stream)的方式进行(3)java.io包下提供了各种“流”类和接口,用以获取不同种类的数据,并提供方法输入或输出数据1.2、流的分类(1)按操作数据单位不同分为:字节流(8bit),用来操作二进制文件、字符流(以字符为单位),用来操作文本文件(2)按数据流的流向不同原创 2021-11-26 00:11:06 · 439 阅读 · 0 评论 -
022Java基础之文件操作
这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Mar原创 2021-11-18 19:45:51 · 619 阅读 · 0 评论 -
021Java基础之多线程基础
1、线程相关概念1.1、程序(program)程序就是为了完成某一个任务,用某种计算机语言(比如java)编写的一组指令的集合,也就是我们所写的代码1.2、进程(1)进程是指运行中的程序,比如我们使用QQ,就启动了一个进程,操作系统就会为该进程分配内存空间,当使用微信时,又启动了一个进程,操作系统也会为微信进程分配特定的内存空间(2)进程是程序的一次执行过程,或是正在运行的一个程序,是动态过程,有它自身的产生、存在、消亡过程1.3、线程(1)线程由进程创建,是进程的一个实体,比如我们用爱奇艺边原创 2021-11-02 20:44:44 · 230 阅读 · 1 评论 -
020Java基础之绘图技术
1、java 绘图坐标体系1.1、坐标体系-介绍1.2、坐标体系-像素1.3、介绍-快速入门package com.francis.draw;import javax.swing.*;import java.awt.*;/** * @author Francis * @create 2021-10-24 15:56 */@SuppressWarnings({"all"})public class DrawCircle extends JFrame { //JFrame 对应窗原创 2021-10-24 20:20:05 · 250 阅读 · 0 评论 -
019Java基础之泛型
1、泛型的理解和好处package com.francis.generic;import java.util.ArrayList;/** * @author Francis * @create 2021-10-23 16:59 */@SuppressWarnings({"all"})public class Generic01 { public static void main(String[] args) { /*请编写程序,在 ArrayList 中,添加原创 2021-10-24 13:11:32 · 153 阅读 · 0 评论 -
018Java基础之集合(Map)
1、Map接口和常用方法1.1、Map 接口实现类的特点(1)Map与Collection并列存在,用于保存具有映射关系的数据:Key-Value(2)Map中的key可以是任何引用数据类型,会封装到HashMap$Node对象中(3)Map中的key不允许重复,但value可以重复(4)Map中的key可以为null,value也可以为null,注意key为null只能有一个(5)常用String类的对象作为Map的key(6)key与value之间存在单向一对一关系,即可以通过指定key总原创 2021-09-30 17:14:28 · 135 阅读 · 0 评论 -
017Java基础之集合(Collection->Set)
1、Set 接口和常用方法1.1、Set 接口基本介绍(1)Set接口的实现子类的元素是无序的,即添加和去除的顺序不同,但是一旦顺序确定了之后取出的顺序就不会改变,没有索引(2)不允许元素重复,所以最多能包含一个null1.2、Set 接口的常用方法和 List 接口一样, Set 接口也是 Collection 的子接口,因此,常用方法和 Collection 接口一样.1.3、Set 接口的遍历方式通Collection的遍历方式一样,因为Set是Collection的子接口(1)迭代器原创 2021-09-29 10:50:50 · 1075 阅读 · 0 评论 -
016Java基础之集合(Collection->List)
1、集合的理解和好处前面我们保存多个数据使用的是数组,那么数组有不足的地方,我们分析一下1.1、数组(1)长度在声明时必须制定,而且一旦制定,不能修改(2)保存的必须为同一类元素(3)使用数组进行增加/删除元素代码比较复杂例如:1.2、集合(1)可以动态保存任意多个对象(2)提供了一系列方便操作对象的方法:add、remove、set、get(3)集合添加/删除元素代码变得简洁了2、集合的框架体系Java 的集合类很多,主要分为两大类,如图 :3、Collection 接口原创 2021-09-20 19:42:47 · 318 阅读 · 0 评论 -
015Java基础之Math、Arrays、System、BigDecimal、日期类
1、Math类Math 类包含用于执行基本数学运算的方法,如初等指数、对数、平方根和三角函数。package com.francis.math;/** * @author Francis * @create 2021-09-13 14:41 */public class MathMethod { public static void main(String[] args) {//看看 Math 常用的方法(静态方法)//1.abs 绝对值 int abs = M原创 2021-09-19 17:13:08 · 130 阅读 · 0 评论 -
014Java基础之常用类:包装类、String、StringBuffer、StringBuilder
1、包装类1.1、包装类的分类(1)针对八种基本数据类型相应的引用类型—包装类(2)有了类的特点,就可以调用类中的方法。1.2、包装类和基本数据的转换JDK5之前采用手动装箱和手动拆箱方式,JDK5之后底层帮我们实现了自动装箱和拆箱。装箱:基本数据类型到包装类;拆箱:包装类到基本数据类型package com.francis.wrapper;/** * @author Francis * @create 2021-07-17 10:16 */public class Inte原创 2021-07-18 23:11:49 · 332 阅读 · 4 评论 -
013Java基础之异常
1、异常概述Java语言中,将程序执行过程中发生的不正常情况称之为“异常”,(开发过程中的语法错误或逻辑错误不是异常)(这里更正一下自己以前的误解:异常发生是,如果不进行处理,程序将会终止,如果采用了try-catch,捕获异常后用e.printStackTrace();程序或答应出报错信息,而且不会终止)2、异常体系执行过程中所发生的异常事件可分为两大类1、error(错误)java虚拟机无法解决的严重问题,如JVM系统内部错误,资源耗尽等严重情况,比如StackOverflowError(原创 2021-07-16 23:46:57 · 118 阅读 · 1 评论 -
012Java基础之枚举及注解
1、枚举在设计类似于季节这种属性值是有限并且固定的类时,如果安装传统方法,在创建对象的时候就会出现乱象,我们需要想办法来规避这种乱象package com.francis.enumeration_;/** * @author Francis * @create 2021-07-04 11:40 */public class Enumerantion01 { public static void main(String[] args) { //使用 S原创 2021-07-14 22:47:20 · 171 阅读 · 0 评论 -
012Java基础之内部类
一个类内部又嵌套了一个完整的类结构。被嵌套的类称为内部类(inner class),嵌套其他类的类称为外部类(outer class),是类的五大成员(属性、方法、构造器、代码块、内部类)之一,内部类最大的特点就是可以直接访问私有属性,并且可以提现类与类之间的包含关系。基本语法class Outer{class Inner{ }}class Other{}1、内部类的分类1、定义在外部类局部位置上(比如方法体内)1、局部内部类(有类名)(1)可以直接访问外部类的成员,包括私有的原创 2021-07-04 11:20:28 · 282 阅读 · 0 评论 -
011Java基础之抽象类、接口
1、final关键字final可以修饰类、属性、方法、局部变量(1)当不希望某个类被继承时,使用final来修饰该类(2)当不希望父类的某个方法被子类覆盖(重写)时,可以用final关键字修饰(3)当不希望类的某个属性的值被修改,可以使用final来修饰(常说的常量)(4)当不希望某个局部变量被修改时,可以用final关键字修饰/** * @author Francis * @create 2021-07-02 13:57 */public class Final01 { pu原创 2021-07-03 17:51:57 · 106 阅读 · 0 评论 -
010Java基础之单例设计模式
1、什么事设计模式设计模式是在大量的实践中总结和理论化之后优选的代码结构、编程风格、以及解决问题的思考方式。设计模式就像是金典的棋谱,不同的棋局,我们用不同的棋谱,免去我们自己再去思考和摸索。2、单例设计模式所谓单例设计模式,就是采用一定的方法保证在整个软甲系统中,对某个类只能存在一个对象实例,并且该类只提供一个获取其对象实例的方法。实现步骤:1、构造器私有化防止用户直接去new2、类的内部创建对象3、向外暴露一个静态的公共方法1、饿汉式饿汉式在类加载时就创建了对象/** * @aut原创 2021-07-01 23:02:48 · 79 阅读 · 0 评论 -
009Java基础之静态成员、代码块及final关键字
1、类变量类变量也叫做静态变量或者静态属性,是该类所有对象共享的变量,任何一个该类的对象去访问它时,取到的都是相同的值,同样,任何一个该类的对象去修改它时,修改的也是同一个变量。静态变量在JDK8之前,存放在方法区的静态域,JDK8以后,存放在堆的Class对象中(官方没有明确的说法)定义语法访问修饰符 static 数据类型 变量名 ;或者static 访问修饰符 数据类型 变量名 ;推荐第一种方式。...原创 2021-07-01 21:34:38 · 168 阅读 · 1 评论 -
008Java基础之Object及其一些方法
1、Object类详解1、equals方法equals与==的区别==(1)既可以判断基本数据类型,也可以判断引用数据类型(2)如果判断的是基本数据类型,判断的是值是否相等,例如:int i = 10;double n = 10.0;(3)如果判断的是引用类型,判断的是地址是否相等,即判断是否是同一个对象。equals(1)是Object中的方法,只能用来判断引用类型(2)默认判断的是地址是否相等,子类中往往重写该方法,用于判断内容是否相等,例如String类型和Integer类型就重写原创 2021-06-29 21:38:05 · 94 阅读 · 1 评论 -
007Java基础之包、访问修饰符、面向对象的 三大特性
1、包包的三大作用:(1)区分相同名字的类(2)当类很多时,可以很好的管理类(3)控制访问范围基本语法package com.francis;1、package 关键字 表示打包2、com.francis 表示包名原创 2021-06-29 14:55:14 · 205 阅读 · 0 评论 -
006Java基础之类与对象
1、类与对象的区别与联系(1)类是抽象的,概念的,代表一类事物,比如人类,猫类…,即它是数据类型(2)对象是具体的,实际的,代表一个具体事物,即是实例.(3)类是对象的模板,对象是类的一个个体,对应一个实例类是对象的抽象,对象是类的实例化2、对象在内存中存在形式(重要的)必须搞清楚。(这是JDK1.7之前的概览图,粗略理解就行)注意:方法区内加载类信息只会加载一次,下次再创建对象不会重复加载3、属性/成员变量/字段(1)从概念或叫法上看:成员变量=属性=field(字段)(即成员变量是用原创 2021-06-23 22:53:19 · 180 阅读 · 4 评论 -
005Java基础之数组、排序、查找
数组可以存放多个同一类型的数据。数组也是一种数据类型,是引用类型。即:数(数据)组(一组)就是一组数据1、数组的使用1、数组的定义数据类型 数组名[] = new 数据类型[大小] 或者 数据类型[] 数组名= new 数据类型[大小] 例如: int[] a = new int[5] 与 int a[] = new int[5]是等价的建议使用== 数据类型[] 数组名= new 数据类型[大小]==这种方式...原创 2021-06-20 18:05:17 · 152 阅读 · 1 评论 -
004Java基础之控制结构
在程序中,程序运行的流程控制决定程序是如何执行的,是我们必须掌握的,主要有三大流程控制语句。(1)顺序控制(3)分支控制(3)循环控制1、顺序控制程序从上到下顺序的执行,中间没有任何的判断或跳转,是最简单的控制结构2、分支控制让程序有选择的的执行,分支控制有三种1、单分支if基本语法if(条件表达式){执行代码块}2、双分支if-else基本语法if(条件表达式){执行代码块1}else{执行代码块2}3、多分支if-elseif-…-else基本语法i原创 2021-06-19 14:47:50 · 82 阅读 · 0 评论 -
003Java基础之运算符及标识符命名
1、概述运算符是一种特殊的符号,用以表示数据的运算、赋值和比较等。1)算术运算符2)赋值运算符3)关系运算符[比较运算符]4)逻辑运算符5)位运算符[需要二进制基础]6)三元运算符2、算术运算符算术运算符是对数值类型的变量进行运算的,在Java程序中使用的非常多。在java中,取模运算公式:a%b=a-(a/b*b)3、关系运算符1)关系运算符的结果都是boolean型,也就是要么是true,要么是false2)关系表达式经常用在if结构的条件中或循环结构的条件中4、逻辑原创 2021-06-16 20:17:29 · 158 阅读 · 0 评论 -
003Java基础之变量及数据类型
变量是程序的基本组成单位。不论是使用哪种高级程序语言编写程序,变量都是其程序的基本组成单位。变量有三个基本要素:类型、名称、值1变量概述1、变量的概念变量相当于内存中一个数据存储空间的表示,你可以把变量看做是一个房间的门牌号,通过门牌号我们可以找到房间,而通过变量名可以访问到变量(值)2、变量使用的基本步骤1、声明变量 int a2、赋值a=60;//应该这么说:把60赋给a使用也可以一步到位,声明的同时并赋值:int a = 60;2、变量快速入门变量使用入门案例public cla原创 2021-06-15 20:06:16 · 1322 阅读 · 1 评论 -
002Java基础之转义和注释
1、Java转义字符""1、Java常用的转义字符在控制台,输入tab键,可以实现命令补全(1)\t:一个制表位,实现对齐的功能(2)\n:换行符(3)\:一个(4)":一个"(5)’:一个’(6)\r:一个回车注意回车与换行的区别:换行是另起一行打印后面的内容,回车是光标回到本行的首部,并且用后面的输出替换前面的输出。public class ChangeChar{ public static void main(String[] args){ System.out.print原创 2021-06-14 18:44:49 · 405 阅读 · 0 评论 -
001Java基础之初识Java、JDK安装及Java开发应注意的细节
1、创建数据库SET NAMES utf8mb4;SET FOREIGN_KEY_CHECKS = 0;create database ssmbuild;USE ssmbuild;-- ------------------------------ Table structure for books-- ----------------------------DROP TABLE IF EXISTS books;CREATE TABLE books (原创 2021-06-14 15:40:09 · 1213 阅读 · 1 评论 -
java基础之正则表达式
regular expression:正则表达式,简写为RegExp,擅长用在文本格式匹配领域1、正则表达式的元字符1、转义字符"\"在java中,用\\来表示转义字符,需要用到转义字符的符号有如下几个:.*+()$/?[]^{}2、字符匹配符符号含义示例解释匹配输入[]可以接收的字符列表[abcde]a、b、c、d、e中的任意一个字符[^]不接收的字符列表[^abcde]除a、b、c、d、e外的任意一个字符,包含特殊字符-连字符A-Z从原创 2021-06-06 17:42:41 · 8655 阅读 · 2 评论