![](https://img-blog.csdnimg.cn/fecd158e9a1746368a1a8cad23febb93.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
Java基础
文章平均质量分 70
日常记录分享
Terence全栈开发
资深JAVA开发工程师、CSDN全栈领域优质创作者、阿里云开发者社区专家博主,热爱技术,喜欢思考,乐于分享
展开
-
Java基础语法
1. Java概述1.1 Java语言发展史语言:人与人交流沟通的表达方式计算机语言:人与计算机之间进行信息交流沟通的一种特殊语言Java语言是美国Sun公司(Stanford University Network)在1995年推出的计算机语言Java之父:詹姆斯·高斯林(James Gosling)2009年,Sun公司被甲骨文公司收购,所以我们现在访问oracle官网即可:https://www.oracle.com当前,我们课程使用的JDK版本:11.01.2 Java语言跨平台原理原创 2022-03-27 21:16:36 · 95097 阅读 · 46 评论 -
笔记35-JavaScript高级
今日内容:1. JavaScript: 1. ECMAScript: 2. BOM: 3. DOM: 1. 事件DOM简单学习:为了满足案例要求* 功能:控制html文档的内容* 获取页面标签(元素)对象:Element * document.getElementById("id值"):通过元素的id获取元素对象* 操作Element对象: 1. 修改属性值: 1. 明确获取的对象是哪一个? 2. 查看API文档,找其中有哪些属性可以设置 2. 修改标签体内容: *原创 2021-06-30 00:27:14 · 81074 阅读 · 0 评论 -
笔记34-JavaScript基础
今日内容1. JavaScript基础JavaScript:* 概念: 一门客户端脚本语言 * 运行在客户端浏览器中的。每一个浏览器都有JavaScript的解析引擎 * 脚本语言:不需要编译,直接就可以被浏览器解析执行了* 功能: * 可以来增强用户和html页面的交互过程,可以来控制html元素,让页面有一些动态的效果,增强用户的体验。* JavaScript发展史: 1. 1992年,Nombase公司,开发出第一门客户端脚本语言,专门用于表单的校验。命名为 : C-- ,后来原创 2021-06-30 00:26:59 · 79664 阅读 · 0 评论 -
笔记33-HTML&CSS
今日内容:1. HTML标签:表单标签2. CSS:HTML标签:表单标签* 表单: * 概念:用于采集用户输入的数据的。用于和服务器进行交互。 * form:用于定义表单的。可以定义一个范围,范围代表采集用户数据的范围 * 属性: * action:指定提交数据的URL * method:指定提交方式 * 分类:一共7种,2种比较常用 * get:原创 2021-06-30 00:26:28 · 79057 阅读 · 0 评论 -
笔记32-HTML
今日内容1. web概念概述2. HTMLweb概念概述* JavaWeb: * 使用Java语言开发基于互联网的项目* 软件架构: 1. C/S: Client/Server 客户端/服务器端 * 在用户本地有一个客户端程序,在远程有一个服务器端程序 * 如:QQ,迅雷... * 优点: 1. 用户体验好 * 缺点: 1. 开发、安装,部署,维护 麻烦 2. B/S: Browser/Server 浏览器/服务器端 * 只需要一个浏览器,用户通过不同的网原创 2021-06-30 00:26:04 · 78077 阅读 · 0 评论 -
笔记31-JDBC连接池&JDBCTemplate
数据库连接池1. 概念:其实就是一个容器(集合),存放数据库连接的容器。 当系统初始化好后,容器被创建,容器中会申请一些连接对象,当用户来访问数据库时,从容器中获取连接对象,用户访问完之后,会将连接对象归还给容器。2. 好处: 1. 节约资源 2. 用户访问高效3. 实现: 1. 标准接口:DataSource javax.sql包下的 1. 方法: * 获取连接:getConnection() * 归还连接:Connection.close()。如果连接对象C原创 2021-06-30 00:25:11 · 77126 阅读 · 0 评论 -
笔记30-JDBC
今日内容1. JDBC基本概念2. 快速入门3. 对JDBC中各个接口和类详解JDBC:1. 概念:Java DataBase Connectivity Java 数据库连接, Java语言操作数据库 * JDBC本质:其实是官方(sun公司)定义的一套操作所有关系型数据库的规则,即接口。各个数据库厂商去实现这套接口,提供数据库驱动jar包。我们可以使用这套接口(JDBC)编程,真正执行的代码是驱动jar包中的实现类。2. 快速入门: * 步骤: 1. 导入驱动jar包 mysql原创 2021-06-30 00:24:45 · 76318 阅读 · 0 评论 -
笔记29-MySQL多表&事务
今日内容1. 多表查询2. 事务3. DCL多表查询:* 查询语法: select 列名列表 from 表名列表 where....* 准备sql # 创建部门表 CREATE TABLE dept( id INT PRIMARY KEY AUTO_INCREMENT, NAME VARCHAR(20) ); INSERT INTO dept (NAME) VALUES ('开发部'),('市场部'),('财务部'); # 创建员工表 CREATE TAB原创 2021-06-30 00:22:35 · 75433 阅读 · 0 评论 -
笔记28-MYSQL约束
DQL:查询语句1. 排序查询 * 语法:order by 子句 * order by 排序字段1 排序方式1 , 排序字段2 排序方式2... * 排序方式: * ASC:升序,默认的。 * DESC:降序。 * 注意: * 如果有多个排序条件,则当前边的条件值一样时,才会判断第二条件。2. 聚合函数:将一列数据作为一个整体,进行纵向的计算。 1. count:计算个数 1. 一般选择非空的列:主键 2. count(*) 2. max:计算最大值 3.原创 2021-06-30 00:12:07 · 74536 阅读 · 0 评论 -
笔记27-MYSQL基础
数据库的基本概念1. 数据库的英文单词: DataBase 简称 : DB2. 什么数据库? * 用于存储和管理数据的仓库。3. 数据库的特点: 1. 持久化存储数据的。其实数据库就是一个文件系统 2. 方便存储和管理数据 3. 使用了统一的方式操作数据库 -- SQL4. 常见的数据库软件 * 参见《MySQL基础.pdf》MySQL数据库软件1. 安装 * 参见《MySQL基础.pdf》2. 卸载 1. 去mysql的安装目录找到my.ini文件 * 复制 da原创 2021-06-30 00:08:05 · 74521 阅读 · 0 评论 -
笔记26-基础加强
Junit单元测试:* 测试分类: 1. 黑盒测试:不需要写代码,给输入值,看程序是否能够输出期望的值。 2. 白盒测试:需要写代码的。关注程序具体的执行流程。* Junit使用:白盒测试 * 步骤: 1. 定义一个测试类(测试用例) * 建议: * 测试类名:被测试的类名Test CalculatorTest * 包名:xxx.xxx.xx.test cn.itcast.test 2. 定义测试方法:可以独立运行 * 建议: * 方法名:tes原创 2021-06-29 22:09:17 · 72912 阅读 · 0 评论 -
笔记25-类加载器&反射&模块化
1.类加载器1.1类加载【理解】类加载的描述当程序要使用某个类时,如果该类还未被加载到内存中,则系统会通过类的加载,类的连接,类的初始化这三个步骤来对类进行初始化。如果不出现意外情况,JVM将会连续完成这三个步骤,所以有时也把这三个步骤统称为类加载或者类初始化类的加载就是指将class文件读入内存,并为之创建一个 java.lang.Class 对象任何类被使用时,系统都会为之建立一个 java.lang.Class 对象类的连接验证阶段:用于检验被加载的类是否有正确的内部结原创 2021-06-29 00:22:53 · 72060 阅读 · 0 评论 -
笔记24-函数式接口&Stream流
1.函数式接口1.1函数式接口概述【理解】概念有且仅有一个抽象方法的接口如何检测一个接口是不是函数式接口@FunctionalInterface放在接口定义的上方:如果接口是函数式接口,编译通过;如果不是,编译失败注意事项我们自己定义函数式接口的时候,@FunctionalInterface是可选的,就算我不写这个注解,只要保证满足函数式接口定义的条件,也照样是函数式接口。但是,建议加上该注解1.2函数式接口作为方法的参数【应用】需求描述定义一个类(Runnable原创 2021-06-29 00:21:53 · 71023 阅读 · 0 评论 -
笔记23-Lambda&方法引用
1.Lambda表达式1.1体验Lambda表达式【理解】案例需求启动一个线程,在控制台输出一句话:多线程程序启动了实现方式一实现步骤定义一个类MyRunnable实现Runnable接口,重写run()方法创建MyRunnable类的对象创建Thread类的对象,把MyRunnable的对象作为构造参数传递启动线程实现方式二匿名内部类的方式改进实现方式三Lambda表达式的方式改进代码演示//方式一的线程类public class My原创 2021-06-29 00:21:15 · 69848 阅读 · 0 评论 -
笔记22-网络编程
1.网络编程入门1.1 网络编程概述【理解】计算机网络是指将地理位置不同的具有独立功能的多台计算机及其外部设备,通过通信线路连接起来,在网络操作系统,网络管理软件及网络通信协议的管理和协调下,实现资源共享和信息传递的计算机系统网络编程在网络通信协议下,实现网络互连的不同计算机上运行的程序间可以进行数据交换1.2 网络编程三要素【理解】IP地址要想让网络中的计算机能够互相通信,必须为每台计算机指定一个标识号,通过这个标识号来指定要接收数据的计算机和识别发送的计算机,而IP地址就原创 2021-06-29 00:20:35 · 68902 阅读 · 0 评论 -
笔记21-多线程
1.实现多线程1.1进程和线程【理解】进程:是正在运行的程序 是系统进行资源分配和调用的独立单位 每一个进程都有它自己的内存空间和系统资源线程:是进程中的单个顺序控制流,是一条执行路径 单线程:一个进程如果只有一条执行路径,则称为单线程程序 多线程:一个进程如果有多条执行路径,则称为多线程程序1.2实现多线程方式一:继承Thread类【应用】方法介绍方法名说明void run()在线程开启后,此方法将被调用执行void start()原创 2021-06-29 00:19:27 · 67911 阅读 · 0 评论 -
笔记20-IO流&Properties集合
1.IO流案例1.1集合到文件数据排序改进版【应用】1.1.1案例需求键盘录入5个学生信息(姓名,语文成绩,数学成绩,英语成绩)。要求按照成绩总分从高到低写入文本文件格式:姓名,语文成绩,数学成绩,英语成绩 举例:林青霞,98,99,1001.1.2分析步骤定义学生类创建TreeSet集合,通过比较器排序进行排序键盘录入学生数据创建学生对象,把键盘录入的数据对应赋值给学生对象的成员变量把学生对象添加到TreeSet集合创建字符缓冲输出流对象遍历集合,得到每一个学生对象把学生原创 2021-06-29 00:19:00 · 66681 阅读 · 0 评论 -
笔记19-字节缓冲流&字符流
1.字节缓冲流1.1字节缓冲流构造方法【应用】字节缓冲流介绍lBufferOutputStream:该类实现缓冲输出流。 通过设置这样的输出流,应用程序可以向底层输出流写入字节,而不必为写入的每个字节导致底层系统的调用lBufferedInputStream:创建BufferedInputStream将创建一个内部缓冲区数组。 当从流中读取或跳过字节时,内部缓冲区将根据需要从所包含的输入流中重新填充,一次很多字节构造方法:方法名说明BufferedOutp原创 2021-06-29 00:18:16 · 65891 阅读 · 0 评论 -
笔记18-File&递归&字节流
1.File类1.1File类概述和构造方法【应用】File类介绍它是文件和目录路径名的抽象表示文件和目录是可以通过File封装成对象的对于File而言,其封装的并不是一个真正存在的文件,仅仅是一个路径名而已。它可以是存在的,也可以是不存在的。将来是要通过具体的操作把这个路径的内容转换为具体存在的File类的构造方法方法名说明File(String pathname)通过将给定的路径名字符串转换为抽象路径名来创建新的 File实例File(Strin原创 2021-06-29 00:16:20 · 64994 阅读 · 0 评论 -
笔记17-Map
1.Map集合1.1Map集合概述和特点【理解】Map集合概述interface Map<K,V> K:键的类型;V:值的类型Map集合的特点键值对映射关系一个键对应一个值键不能重复,值可以重复元素存取无序Map集合的基本使用public class MapDemo01 { public static void main(String[] args) { //创建集合对象 Map<String,String&g原创 2021-06-28 22:07:15 · 64163 阅读 · 0 评论 -
笔记16-集合
1.Set集合1.1Set集合概述和特点【应用】Set集合的特点元素存取无序没有索引、只能通过迭代器或增强for循环遍历不能存储重复元素Set集合的基本使用public class SetDemo { public static void main(String[] args) { //创建集合对象 Set<String> set = new HashSet<String>(); //添加元素原创 2021-06-28 22:06:21 · 63023 阅读 · 0 评论 -
笔记15-集合
1.Collection集合1.1集合体系结构【记忆】集合类的特点 提供一种存储空间可变的存储模型,存储的数据容量可以随时发生改变集合类的体系图1.2Collection集合概述和基本使用【应用】Collection集合概述是单例集合的顶层接口,它表示一组对象,这些对象也称为Collection的元素JDK 不提供此接口的任何直接实现,它提供更具体的子接口(如Set和List)实现Collection集合基本使用public class Collect原创 2021-06-28 22:05:30 · 62045 阅读 · 0 评论 -
笔记14-常用API&异常
1.包装类1.1基本类型包装类(记忆)基本类型包装类的作用 将基本数据类型封装成对象的好处在于可以在对象中定义更多的功能方法操作该数据 常用的操作之一:用于基本数据类型与字符串之间的转换基本类型对应的包装类基本数据类型包装类byteByteshortShortintIntegerlongLongfloatFloatdoubleDoublecharCharacterbooleanBoolean1.2原创 2021-06-28 00:54:56 · 61028 阅读 · 0 评论 -
笔记13-内部类&API
1. 参数传递1.1 类名作为形参和返回值(应用)1、类名作为方法的形参方法的形参是类名,其实需要的是该类的对象实际传递的是该对象的【地址值】2、类名作为方法的返回值方法的返回值是类名,其实返回的是该类的对象实际传递的,也是该对象的【地址值】示例代码:class Cat { public void eat() { System.out.println("猫吃鱼"); }}class CatOperator { public void原创 2021-06-28 00:46:13 · 59910 阅读 · 0 评论 -
笔记12-多态&抽象类&接口
1.多态1.1多态的概述(记忆)什么是多态 同一个对象,在不同时刻表现出来的不同形态多态的前提要有继承或实现关系要有方法的重写要有父类引用指向子类对象1.2多态中的成员访问特点(记忆)成员访问特点成员变量 编译看父类,运行看父类成员方法 编译看父类,运行看子类代码演示动物类public class Animal { public int age = 40; public void eat() {原创 2021-06-28 00:42:54 · 59206 阅读 · 0 评论 -
笔记11-继承&修饰符
1. 继承1.1 继承的实现(掌握)继承的概念继承是面向对象三大特征之一,可以使得子类具有父类的属性和方法,还可以在子类中重新定义,以及追加属性和方法实现继承的格式继承通过extends实现格式:class 子类 extends 父类 { }举例:class Dog extends Animal { }继承带来的好处继承可以让类与类之间产生关系,子父类关系,产生子父类后,子类则可以使用父类中非私有的成员。示例代码public class Fu {原创 2021-06-28 00:38:48 · 57974 阅读 · 0 评论 -
笔记10-ArrayList&学生管理系统
1.ArrayList1.1ArrayList类概述【理解】什么是集合 提供一种存储空间可变的存储模型,存储的数据容量可以发生改变ArrayList集合的特点 底层是数组实现的,长度可以变化泛型的使用 用于约束集合中存储元素的数据类型1.2ArrayList类常用方法【应用】1.2.1构造方法方法名说明public ArrayList()创建一个空的集合对象1.2.2成员方法方法名说明public boolean原创 2021-06-28 00:34:45 · 57153 阅读 · 1 评论 -
笔记09-常用API第一部分
1.API1.1API概述【理解】什么是API API (Application Programming Interface) :应用程序编程接口java中的API 指的就是 JDK 中提供的各种功能的 Java类,这些类将底层的实现封装了起来,我们不需要关心这些类是如何实现的,只需要学习这些类如何使用即可,我们可以通过帮助文档来学习这些API如何使用。1.2如何使用API帮助文档【应用】打开帮助文档找到索引选项卡中的输入框在输入框中输入Random看原创 2021-06-28 00:30:57 · 56248 阅读 · 0 评论 -
笔记08-面向对象
1. 类和对象1.1 类和对象的理解【理解】客观存在的事物皆为对象 ,所以我们也常常说万物皆对象。类类的理解类是对现实生活中一类具有共同属性和行为的事物的抽象类是对象的数据类型,类是具有相同属性和行为的一组对象的集合简单理解:类就是对现实事物的一种描述类的组成属性:指事物的特征,例如:手机事物(品牌,价格,尺寸)行为:指事物能执行的操作,例如:手机事物(打电话,发短信)类和对象的关系类:类是对现实生活中一类具有共同属性和行为的事物的抽象对象:是能够看得到摸的着原创 2021-06-28 00:12:10 · 55291 阅读 · 0 评论 -
笔记07-基础练习
1.基础练习2.1减肥计划if版本【应用】2.1.1案例需求 输入星期数,显示今天的减肥活动 周一:跑步 周二:游泳 周三:慢走 周四:动感单车 周五:拳击 周六:爬山 周日:好好吃一顿2.1.2代码实现/* 思路: 1:键盘录入一个星期数,用一个变量接收 2:对星期数进行判断,这里用 if 语句实现原创 2021-06-27 23:58:34 · 53950 阅读 · 1 评论 -
笔记06-IDEA的DEBUG入门
1.Debug模式1.1什么是Debug模式【理解】是供程序员使用的程序调试工具,它可以用于查看程序的执行流程,也可以用于追踪程序执行过程来调试程序。1.2Debug模式操作流程【应用】如何加断点选择要设置断点的代码行,在行号的区域后面单击鼠标左键即可如何运行加了断点的程序在代码区域右键Debug执行看哪里看Debugger窗口看Console窗口点哪里点Step Into (F7)这个箭头,也可以直接按F7如何删除断点原创 2021-06-27 23:56:50 · 52648 阅读 · 0 评论 -
笔记05-方法
1. 方法概述1.1 方法的概念(理解) 方法(method)是将具有独立功能的代码块组织成为一个整体,使其具有特殊功能的代码集注意:方法必须先创建才可以使用,该过程成为方法定义方法创建后并不是直接可以运行的,需要手动使用后,才执行,该过程成为方法调用2. 方法的定义和调用2.1 无参数方法定义和调用(掌握)定义格式:public static void 方法名 ( ) { // 方法体;}范例:public static void method (原创 2021-06-27 23:42:17 · 51898 阅读 · 0 评论 -
笔记04-数组
1.数组1.1什么是数组【理解】 数组就是存储数据长度固定的容器,存储多个数据的数据类型要一致。1.2数组定义格式【记忆】1.2.1第一种 数据类型[] 数组名 示例:int[] arr; double[] arr; char[] arr;1.2.2第二种 数据类型 数组名[] 示例:int arr[];double arr[];char arr[];1.3数组动态初始化【应用】1.3.1什么是动态初始化 数组动态初始化就是只给定数原创 2021-06-27 23:34:13 · 50724 阅读 · 1 评论 -
笔记03-Java基础语法
1. switch语句1.1 switch语句结构(掌握)格式取值为byte、short、int、char,JDK5以后可以是枚举,JDK7以后可以是String。switch (表达式) { case 1: 语句体1; break; case 2: 语句体2; break; ... default: 语句体n+1; break; }执行流程:首先计算出表达式的值其次,和case依次比较,一旦有对应的值,就会执行相应的语句,在执行的过程中,遇到br原创 2021-06-27 22:17:22 · 48787 阅读 · 0 评论 -
笔记01-Java基础语法
这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Mar原创 2021-06-27 21:20:16 · 47284 阅读 · 0 评论 -
笔记02-Java基础语法
1. 运算符1.1 算术运算符(理解)1.1.1 运算符和表达式运算符:对常量或者变量进行操作的符号表达式:用运算符把常量或者变量连接起来符合java语法的式子就可以称为表达式。 不同运算符连接的表达式体现的是不同类型的表达式。举例说明:int a = 10;int b = 20;int c = a + b;+:是运算符,并且是算术运算符。a + b:是表达式,由于+是算术运算符,所以这个表达式叫算术表达式。1.1.2 算术运算符符原创 2021-06-27 21:57:38 · 48047 阅读 · 0 评论