JVAVSE基础
渔夫阿布
这个作者很懒,什么都没留下…
展开
-
【JAVASE基础】单元测试
1.学习目标●了解Junit的概述●掌握Junit的使用2.内容讲解2.1 Junit是什么Junit是Java语言编写的第三方单元测试框架2.2单元测试概念●单元:在Java中,-个类就是一 个单元●单元测试:程序猿编写的一-小段代码,用来对某个类中的某个方法进行功能测试或业务逻辑测试。2.3 Junit单元测试框架的作用用来对类中的方法功能进行有目的的测试,以保证程序的正确性和稳定性。能够让方法独立运行起来。2.4 Junit单元测试框架的使用步骤java编写业务类,在业务类原创 2022-03-20 14:55:22 · 242 阅读 · 0 评论 -
【JAVAWeb】JDBC的使用步骤
JDBC的使用步骤:1.注册驱动Class. forName (“驱动的全限定名”); //mysql驱动的全限定名是com . mysql. jdbc . Driver如果你使用的是mysql8.0那么请你使用mysql8的驱动jar包,并且驱动的全限定名是com. mysql.cj. jdbc2. 获得连接(建立客户端与mysql服务器的连接)Connection conn = DriverManager . getConnection(“数据库服务器路径”, “用户名”, “密码”);3.原创 2022-03-20 10:39:00 · 841 阅读 · 0 评论 -
【JAVASE基础】字节输入流
4.字节输入流java.io.InputStream是所有字节输入流的超类:可以读取任何类型文件●读取字节的方法read。int read)读取单个字节,读取到流的末尾返回-1。int read(byteD b)读取字节数组,读取到流的末尾返回-143.1 FileInputStream●构造方法: FileInputStream(File file)●构造方法: FileInputStream(String file)。创建字节输入流对象绑定参数就是要读取的数据源文件package co原创 2022-03-19 19:07:36 · 295 阅读 · 0 评论 -
【JAVASE基础】 I0流对象
I0流对象10: Input Output I0作用是将数据从一个设备中流入到另-个设备数据文件,从磁盘中流向内存中,从磁盘中流向移动存储设备从- -台计算机流向另-台计算机-切都是字节:任何数据文件都是字节组成,字节是计算机中最小的存储单元2.1 I0流对象的分类2.1.1按照操作的文件类型分类●文本类型文件-选择流对象字符流。什么是文本文件:使用文本工具,记事本,notepad++ ,editplus打开文件后人类可以直接阅读●非文本类型文件-选择流对象字节流2.1.2按照数据的流原创 2022-03-19 12:06:30 · 240 阅读 · 0 评论 -
【JAVASE基础】File类的方法
File类的方法1.1 File类获取的方法●File getAbsoluteFile()获取绝对路径返回值是File类型●File getParentFile()获取父路径,返回值是File类型●String getName0获取名字,,File构造方法中的路径的名字●String getPath)获取File构造方法中的路径.完整的路径转成String返回●long length0获取文件的字节数package com.sdjzu.getmethods;import java.io.原创 2022-03-19 09:56:51 · 199 阅读 · 0 评论 -
【JAVASE基础】JDK5新特性Lock锁
JDK5新特性Lock锁JDK5新的特性: java.util.concurrent.locks包.定义了接口Lock.Lock接口替代了synch;onized,可以更加灵活●Lock接口的方法。void lock()获取锁。void unlock()释放锁●Lock接口的实现类ReentrantLockpackage com.sdjzu.thread4;import java.util.concurrent.locks.Lock;import java.util.concurre.原创 2022-03-17 20:06:50 · 567 阅读 · 0 评论 -
【JAVASE基础】线程安全
4.线程安全出现线程安全的问题需要一个前提:多个线程同时操作同-一个资源线程执行调用方法run,同一个资源是堆内存的4.1售票例子火车票的票源是固定的,购买渠道在火车站买,n多个窗口线程的安全问题:多线程操作-一个资源,有可能出现安全问题出现的原因:当一个线程还没有操作完成,另-一个线程就开始操作了解决线程的安全问题:当一个线程没有完成全部操作的时候,其它线程不能操作4.2同步代码块同步代码块可以解决线程安全问题:格式synchronized关键字synchronized (任意对象)原创 2022-03-17 19:49:42 · 233 阅读 · 0 评论 -
【JAVASE基础】线程
1.线程的基本概念1.1进程任何的软件存储在磁盘中,运行软件的时候,OS使用I0技术,将磁盘中的软件的文件加载到内存,程序在能运行。进程的概念:应用程序(typerpa,word,IDEA)运行的时候进 入到内存,程序在内存中占用的内存空间(进程).1.2线程线程(Thread) :在内存和CPU之间,建立一条连接通路,CPU可以到内存中取出数据进行计算,这个连接的通路,就是线程.-个内存资源:一个独立的进程进程中可以开启多个线程(多条通路)并发同一一个时刻多个线程同时操作了同一一个数据原创 2022-03-17 16:41:44 · 519 阅读 · 0 评论 -
【JAVASE基础】HashMap
4. HashMap●HashMap集合特点。是哈希表结构。保证键唯- -性用于键的对象必须重写hashCode,equals方法。线程不安全集合,运行速度快。集合运行使用nul.作为键或者值package com.sdjzu.hashmap;import java.util.HashMap;import java.util.Map;public class HashMapTest { public static void main(String[] args) {原创 2022-03-17 10:04:33 · 521 阅读 · 0 评论 -
【JAVASE基础】Map集合
3. Map集合java.util.Map接口,是双列集合的顶级接口.Map集合容器每次存储2个对象,一个对象称为键(Key),- 一个对象称为值(Value)在一个Map的集合容器中,键保证唯一性不包含重复键每个键只能对应一个值3.1 Map接口方法;●V put(K,V)存储键值对,存储重复键,返回被覆盖之前的值package com.sdjzu.mapputget;import java.util.HashMap;import java.util.Map;public class原创 2022-03-17 09:19:27 · 163 阅读 · 0 评论 -
【JAVASE基础】泛型Generic
1.泛型Generic泛型技术是DK版本一大升级,源自于JDK1.5泛型就是集合类<泛型>1.1泛型的安全机制软件升级:安全性提高,修复Bug错误改善用户体验增加功能,提升性能JDK1.5里程碑版本泛型作用 :强制了集合存储固定的数据类型泛型的书写格式:集合类<存储的数据类型>变量名 = new集合类<>b;选择●使用泛型的好处:。安全性提高了。程序的代码量减少。避免了类型的强制转换。程序的问题,由运行时期,提前到编译时期1.2泛型中的E问原创 2022-03-15 20:14:28 · 1256 阅读 · 0 评论 -
【JAVASE基础】Collections工具类
Collections工具类●java.util.Collection集合的顶级接口●java.util.Collections 操作集合的工具类。工具类的方法全部静态方法,类名直接调用。主要是操作Collection系列的单列集合,少部分功能可以操作Map集合|package com.sdjzu.collects;import java.util.*;/** 集合的工具类* Collects** */public class CollectTest { public.原创 2022-03-15 17:14:06 · 1163 阅读 · 0 评论 -
【JAVASE基础】4.红黑树
4.红黑树红黑树(Red-Black-Tree)●二叉树,本质就是链表。查询速度快。每个一个节点只有两个子节点左和右。树长偏了●自然平衡二叉树。二叉树的基础上,改进,保证树是平衡的●红黑树(https://www.cs.usfca.edu/~galles/visualization/RedBlack.html)。每个节点有颜色,要么红,要么是黑。根节点必须是黑色。 叶子节点必须是黑色。变量表示颜色,true黑色,false红色4.1 TreeSet集合使用TreeSet集合,底层原创 2022-03-15 16:43:04 · 605 阅读 · 0 评论 -
【JAVASE基础】Set集合
3. Set集合Set集合,是接口Set,继承Collection接口. ** Set集合不存储重复元素**Set接口下的所有实现类,都会具有这个特性Set接口的方法,和父接口Collection中的方法完全一样3.1 Set集合存储和遍历package com.sdjzu.settest;import java.util.HashSet;import java.util.Iterator;import java.util.Set;public class SetTest {原创 2022-03-15 16:18:22 · 661 阅读 · 0 评论 -
【JAVASE基础】LinkedList
2. LinkedList集合使用2.1 LinkedList集合的特点LinkedList类实现接口List,LinkedList具备了List接口的特性(有序,重复,索引)●LinkedList底层实现原理是链表,双向链表●LinkedList增删速度快●LinkedList查询慢●LinkedList是线程不安全的集合,运行速度快2.2 LinkedList集合特有方法集合是链表实现可以单独操作链表的开头元素和结尾元素●void addFirst(E e)元素插入到链表开头●voi原创 2022-03-15 11:18:49 · 887 阅读 · 0 评论 -
【JAVASE基础】 ArrayList
1.1 ArrayList集合的特点ArrayList类实现接口List,ArrayList具备了List接口的特性(有序,重复,索引●ArrayList集合底层的实现原理是数组,大小可变(存储对象的时候长度无需考虑).●数组的特点:查询速度快,增删慢.●数组的默认长度是10个,每次的扩容是原来长度的1.5倍.●ArrayList是线程不安全的集合,运行速度快.1.2.1 ArrayList类成员变量private static final int DEFAULT CAPACITY = 10;原创 2022-03-15 10:19:52 · 92 阅读 · 0 评论 -
【JAVASE基础】集合框架
2.1集合框架2.1集合框架由来JDK1.2版本后,出现这个集合框架到DK1.5后,大幅度优化.●集合本质上是存储对象的容器●数组也能存储对象,数组弊端就是定长●解决数组的问题开发出来集合框架,集合框架无需考虑长度I●集合和数组的区别与共同点。集合,数组都是容器,都可以存储数据。集合只存储引用数据类型,不存储基本数据类型。数组可以存储基本类型,也可以存储引用类型。数组定长,集合容器变成牢记:数据多 了存数组,对象多了存集合●集合学习的关键点。怎么存储数据。怎么取出数据。选择哪原创 2022-03-14 20:44:24 · 417 阅读 · 0 评论 -
【JAVASE基础】异常
1.异常异常的知识点不好理解,要求同学们学习异常,主要的目的记住使用格式1.1 try…catch异常处理try catch的异常处理的格式写法:try{被检测的代码可能发生异常的代码}catch(异常类的类名变量名){异常的处理方式:写什么都可以定义变量,创建对象,调用方法,循环,判断…只要写了catch,异常就被处理掉了I}package com.sdjzu.exception;public class ExceptionTest { public static vo原创 2022-03-14 11:16:59 · 348 阅读 · 0 评论 -
【JAVASE基础】异常继承体系
6.1异常继承体系-切都是对象,异常也是对象,JDK为异常定义了大量的类,类之间产生继承关系异常中的顶级父类:●java.lang.Throwable :所有异常和错误的父类。java.lang.Error :所有错误的父类。java.lang.Exception :所有异常的父类■java.lang.RuntimeExeption :所有的运行异常父类错误:程序中出现了错误,程序人员只能修改代码,否则不能运行异常:程序中出现了异常,可以把异常处理调用,程序继续执行I6.2 Throwa原创 2022-03-14 09:58:30 · 424 阅读 · 0 评论 -
【JAVASE基础】自动装箱和拆箱
5.3自动装箱和拆箱●自动装箱:基本数据类型自动转成引用类型int -> Integer●自动拆箱:引用类型自动转成基本数据类型Integer ->intpackage com.sdjzu.autoBox;public class AutoBoxTest { public static void main(String[] args) { auto1(); auto2(); } public static void auto1()原创 2022-03-14 09:13:48 · 310 阅读 · 0 评论 -
【无标题】
5.基本数据类型对象包装类基本数据类型,一共有8种.可以进行计算,但是功能上依然不够用,JDK提供了一套基本数据类型的包装类,功能增强,全部在lang包基本数据类型的包装类的最 重要功能:实现类基本数据类型和String的互转5.1基本类型int变成Integer类的对象●Integer类的构造方法。Integer(int a) int类型转成Integer对象。Integer(String s)字符串转成Integer对象字符串必须纯数字格式。static Integer valueQf原创 2022-03-14 08:45:21 · 5293 阅读 · 0 评论 -
【JAVASE基础】大数运算
大数运算基本数据类型long ,double都是有取值范围.遇到超过范围数据怎么办引入了大数运算对象.超过取出范围了,不能称为数字了,称为对象java.math包: BigInteger大整数, BigDecintal大浮点(精度,不损失精度)package com.sdjzu.biginteger;import java.math.BigInteger;public class BigIntegerTest { public static void main(String[] ar原创 2022-03-12 20:19:41 · 371 阅读 · 0 评论 -
【JAVASE基础】 Arrays工具类
Arrays工具类java.util包中定义了类Arrays,数组操作的工具类类不能创建对象,直接静态调用●Arrays类的静态方法。static void sort(数组)对数组进行升序排列(目前为止效率最快)。static int binarySearch(数组,查找的关键字)对数组进行二分搜索法。static void fll(数组填充的元素)。static String toString(数组)返回数组字符串表现形式。static List aslist…)元素转成List集合/*原创 2022-03-12 19:03:33 · 222 阅读 · 0 评论 -
【JAVASE基础】数组的相关操作
4.数组的相关操作4.1数组的翻转所谓的数组的翻转例子:原始数组{1,2,3,4}翻转后是{4,3,2,1}数组的翻转不等于倒叙遍历数组中元素位置的交换数组的换位借助一个变量核心问题:数组中最远端的元素交换位置上Ipackage com.sdjzu.array;public class ArrayTest { public static void main(String[] args) { arrayOverturn(); } public stat原创 2022-03-12 17:12:18 · 168 阅读 · 0 评论 -
【JAVASE基础】常用类
System类Math类的使用...原创 2022-03-12 16:09:25 · 458 阅读 · 0 评论 -
【JAVASE基础】常用类
1. API的概念应用程序编程接口:每一个技术官方都会定义出许多的功能开发人员可以直接拿来使用(拿来主义). API可以理解为Sun公司已经开发好的类和方法. API文档就是我们开发的帮手Object类:String类,StringBuilder类中的方法的使用原创 2022-03-12 10:06:29 · 375 阅读 · 0 评论 -
【JAVASE基础】接口
1接口之间的关系.类和类之间是继承关系(单继承),类和接口之间是实现关系(多实现implements),接口和接口之间是继承关系,支持多继承,一个接口可以同时继承多个接口.interface A extends B,C,D{}package com.sdjzu.test.interface01;//定义一个接口public interface A { public abstract void a();}package com.sdjzu.test.interface01;//定义原创 2022-03-10 09:42:48 · 55 阅读 · 0 评论 -
【JAVASE基础】接口interface
接口interface接口的定义:当一个抽象类中的所有方法全部是抽象的时候可以将这个抽象类换一一个更加贴切的名词,叫他接口,接口的意义:可扩展性强接口的规范3.3接口中成员定义(JDK1.7版本)●成员变量。成员变量的定义是具。固定格式。成员变量的修饰符是固定public static finalpublic static final 数据类型变量名=值;●成员方法3.4接口的使用方式●接口不能建立对象,不能new●需要定义类,实现接口(继承类,在接口中称为实现理解为原创 2022-03-10 07:57:58 · 86 阅读 · 0 评论 -
【JAVASE基础】方法的使用
方法的重载1. 前提同一个类,相同的方法名(不用管返回值类型)2. 好处可以在一个类中重复使用同一个方法名3.规则.参数列表不同①个数不同②数据类型不同4. 案例public class Calculator { //在类中构造方法 //权限修饰符 数据类型 方法名(形参) public int add(int a,int b){ //返回值是返回给调用的对象 return a+b;转载 2022-03-02 10:42:39 · 82 阅读 · 0 评论 -
【JAVASE基础】对象的相关练习:对象数组题目
对象数组题目:定义类Student,包含三个属性:学号number(int),年级state(int),成绩score(int)。创建20个学生对象, 学号为1到20,年级和成绩都由随机数确定。问题一:打印出3年级(state值为3)的学生信息。|问题二:使用冒泡排序按学生成绩排序,并遍历所有学生信息提示:1)生成随机数: Math.random(), 返回值类型double;2)四舍五入取整: Math.round(double d), 返回值类型long。/** 定义一个学生类* *原创 2022-03-02 10:05:39 · 75 阅读 · 0 评论 -
【JAVASE基础】数组中的异常
数组中的异常(编译都通过)1.数组下标越界异常2.数组空指针异常public class ArrayException { public static void main(String[] args) { //1.数组下标越界异常 //ArrayIndexOutOfBoundsException int[] arr=new int[6]; //arr[6]=3;编译不报错 //2.数组空指针异常原创 2022-03-02 02:34:54 · 58 阅读 · 0 评论 -
【JAVASE基础】使用Arrays工具类实现对数组的排序
使用Arrays工具类实现对数组的排序public class ArrayUtilTest { public static void main(String[] args) { //声明创建一个数组 int[] arr1 ={12,34,456,7,8,78,-8,56}; //使用工具类 Arrays.sort(arr1); //遍历数组 for (int i = 0; i < arr1.len原创 2022-03-02 02:16:42 · 223 阅读 · 0 评论 -
API的简单使用
API的简单使用import java.util.Scanner;public class ScannerTest { public static void main(String[] args) { //创建对象 Scanner sc1 = new Scanner(System.in); System.out.println("请输入数据:"); //接受数据 String line = sc1.nextLin原创 2022-03-02 01:47:32 · 683 阅读 · 0 评论 -
JAVASE基础:面向对象
面向对象1. 面向对象与面向过程的区别(面向对象是基于面向过程的)①面向对象将复杂的问题简单化②万事万物皆可对象③面向过程是执行者,面向对象是指挥者2. 类和对象的关系类:对具有相同属性和行为的事物的抽象对象:实际存在的实体类是对对象的描述,对象是类的实体类和对象的使用①类的定义和使用类的组成:属性和方法(成员变量和方法)public class Student { //属性:成员变量 // //方法:成员方法 int age; Strin原创 2022-03-01 20:47:17 · 135 阅读 · 0 评论 -
【JAVASE】多维数组的声明创建,访问和遍历
多维数组的声明创建,访问和遍历package com.atguigu.javase.array;public class ArrayMultidimension { public static void main(String[] args) { //一.多维数组的声明变量与创建对象 //动态创建多维数组-----指定数组的长度 int[][] arr2d01 =new int[4][2]; //赋值 arr2d0原创 2022-03-01 18:30:08 · 113 阅读 · 0 评论 -
【JAVASE】声明创建赋值遍历数组的过程
【JAVASE】声明创建赋值遍历数组的过程package com.atguigu.javase.array;public class ArrayTest { public static void main(String[] args) {//快捷键psvm //1.数组的声明 //①基本数据类型 int[] agearray; //②引用数据类型 String[] namearray; //①创原创 2022-03-01 10:09:17 · 99 阅读 · 0 评论 -
【JAVASE基础】循环控制语句
循环控制语句break结束本层循环continue结束本次循环retune结束函数原创 2022-02-25 16:00:13 · 182 阅读 · 0 评论 -
【JAVASE基础】数组
##JAVASE 数组数组的概述定义:相同数据类型,按照一定的顺序排列的集合数组本身是一个引用的数据类型,但是数组中的元素既可以是基本数据类型也可以是引用数据类型。只有new出数组的对象才可以使用,如果不赋值会有默认值。、系统创建数组对象后,必须分配和数组长度匹配的空间,此时每一个数组元素都会被系统分配默认值数组的使用package com.atguigu.javase.array;public class ArrayTest { public static void mai原创 2022-02-25 14:48:50 · 247 阅读 · 0 评论