- 博客(19)
- 收藏
- 关注
原创 CGB2108-Day19-反射-反射的方法
反射的概念反射是Java这门语言中比较有特点的一个特征,反射非常强大,我们可以通过反射获取目标类当中的资源,甚至是私有资源反射就像一面镜子,它可以在运行时获取一个类的所有信息,可以获取到任何定义的信息(包括成员变量,成员方法,构造器等),并且可以操纵类的字段、方法、构造器等部分。反射的方法反射需要用到的API获取字节码对象Class.forName(“类的全路径”); 注意:传入的是类的全路径名,包含包名.类名,而且会抛出异常类名.class 注意:这个写法需要自己手动接一
2021-11-01 11:13:11
288
原创 CGB2108-Day18-进程-线程-线程的状态及转换
进程与线程1 进程1.1 进程的概念进程就是正在运行的程序,它会占用对应的内存区域,由CPU进行执行与计算。1.2 进程的特点独立性进程是系统中独立存在的实体,它可以拥有自己独立的资源,每个进程都拥有自己私有的地址空间,在没有经过进程本身允许的情况下,一个用户进程不可以直接访问其他进程的地址空间动态性进程与程序的区别在于,程序只是一个静态的指令集合,而进程是一个正在系统中活动的指令集合,程序加入了时间的概念以后,称为进程,具有自己的生命周期和各种不同的状态,这些概念都是程序所不具备的.并
2021-10-08 19:18:33
275
原创 CGB2108-Day17- List接口-ArrayList-LinkedList- Map接口- HashMap的存储过程-set接口
1 Collection接口1.1 集合前言Java语言的java.util包中提供了一些集合类,这些集合类又称之为容器提到容器不难想到数组,集合类与数组最主要的不同之处是,数组的长度是固定的,集合的长度是可变的,而数组的访问方式比较单一,插入/删除等操作比较繁琐,而集合的访问方式比较灵活常用的集合类有List集合,Set集合,Map集合,其中List集合与Set集合继承了Collection接口,各个接口还提供了不同的实现类.1.2 集合概念集合的英文名称是Collec...
2021-10-07 21:58:33
331
1
原创 CGB2108-Day16-序列化与反序列化-集合-泛型-Collection-测试报错NotSerializableException-测试报错InvalidClassException
初识序列化与反序列化1 概述序列化是指将对象的状态信息转换为可以存储或传输形式的过程.在序列化期间,对象将其当前状态写入到临时或持久性存储区.以后可以通过从存储区中读取或者反序列化对象的状态,重新创建该对象.序列化:利用ObjectOutputStream,把对象的信息,按照固定的格式转成一串字节值输出并持久保存到磁盘反序列化:利用ObjectInputStream,读取磁盘中之前序列化好的数据,重新恢复成对象2 特点/应用场景需要序列化的文件必须实现Serializable接..
2021-10-07 21:50:55
278
原创 CGB2108-Day15-流的分类-字节输入流-字节输出流-字符输入流-字符输出流
IO简介1 流Stream在学习IO流之前,我们首先需要学习的概念就是Stream流为了方便理解,我们可以把数据的读写操作抽象成数据在"管道"中流动,但需注意:1.流只能单方向流动2.输入流用来读取 → in3.输出流用来写出 → out4.数据只能从头到尾顺序的读写一次所以以程序的角度来思考,In/out 相对于程序而言的输入(读取)/输出(写出)的过程.2 IO流的继承结构在java中,根据处理的数据单位不同,可以把流分为字节流和字符流字节流 : 针对二进制文件..
2021-10-07 21:47:51
128
原创 CGB2108-Day14-正则表达式Regex-包装类-BigDecimal-File文件类
1 正则表达式Regex1.1 概述正确的字符串格式规则。常用来判断用户输入的内容是否符合格式的要求,注意是严格区分大小写的。1.2 常见语法1.3 String提供了支持正则表达式的方法Matches(正则) : 当前字符串能否匹配正则表达式replaceAll(正则,子串) : 替换子串split(正则) : 拆分字符串2 包装类把基本类型进行包装,提供更加完善的功能。基本类型是没有任何功能的,只是一个变量,记录值,而包装类可以有更加丰富的功能2.1 与.
2021-10-07 21:43:19
323
原创 CGB2108-Day13-API-顶级父类 Object-hashCode()-toString()-equals()-String 类-StringBuilder和StringBuffer的区别
什么是APIAPI(Application Programming Interface,应用程序接口)是一些预先定义的函数。目的是提供应用程序与开发人员基于某软件可以访问的一些功能集,但又无需访问源码或理解内部工作机制的细节.API是一种通用功能集,有时公司会将API作为其公共开放系统,也就是公司制定自己的系统接口标准,当需要进行系统整合,自定义和程序应用等操作时,公司所有成员都可以通过该接口标准调用源代码.Java.util包是java中的工具包,包含各种实用工具类/集合类/日期时间工具等各种常用
2021-10-07 21:38:54
133
原创 CGB2108-Day12-标准类的制作-接口-类与类的关系-接口与接口的关系-类与接口的关系-抽象类与接口的比较
多态1. 概念多态是面向对象程序设计(OOP)的一个重要特征,指同一个实体同时具有多种形式,即同一个对象,在不同时刻,代表的对象不一样,指的是对象的多种形态。可以把不同的子类对象都当作父类来看,进而屏蔽不同子类对象之间的差异,写出通用的代码,做出通用的编程,统一调用标准。2 . 特点多态的前提1:是继承 多态的前提2:要有方法的重写 父类引用指向子类对象,如:Animal a = new Cat(); 多态中,编译看左边,运行看右边 4. 多态的好处多态可以让我们不用关心某个对象
2021-10-07 13:01:27
92
原创 CGB2108-Day11-异常-抽象
1 static1.1 概念是java中的一个关键字用于修饰成员(成员变量和成员方法)1.2 特点可以修饰成员变量与成员方法随着类的加载而加载,优先于对象加载只加载一次,就会一直存在,不再开辟新空间, 直到类消失才一起消失静态资源也叫做类资源,全局唯一,被全局所有对象共享可以直接被类名调用静态只能调用静态,非静态可以随意调用static不能和this或者super共用,因为有static时可能还没有对象2 静态代码块、构造代码块、局部代码块2.1 静态代码块格式静态资
2021-10-06 10:26:36
284
原创 CGB2108-Day10-继承中变量、构造方法的使用-方法的重写-方法的重载-重写与重载的比较- this与super-关键字final-关键字static-静态代码块
1 继承1.1概念继承是面向对象最显著的一个特征继承是从已有的类中派生出新的类,新的类能吸收已有类的数据属性和行为,并扩展新的能力.Java继承是会用已存在的类的定义作为基础建立新类的技术新类的定义可以增加新的数据或者新的功能,也可以使用父类的功能,但不能选择性的继承父类(超类/基类)这种继承使得复用以前的代码非常容易,能够大大的缩短开发的周期,降低开发费用.1.2 特点使用extends关键字来表示继承关系相当于子类把父类的功能复制了一份Java只支持单继承继承可以传递(爷爷/.
2021-10-06 10:22:58
127
原创 CGB2108-Day09-构造方法-this-继承
1 构造方法1.1 概念构造方法是一种特殊的方法,它是一个与类同名且没有返回值类型的方法构造方法的主要功能就是完成对象创建或者初始化当类创建对象(实例化)时,就会自动调用构造方法构造方法与普通方法一样也可以重载.1.2 形式与类同名,且没有返回值类型,可以含参也可以不含参关于构造函数怎么记忆:特点:方法名与类名相同,且没有返回值类型执行时机:创建对象时立即执行默认会创建无参构造,但是,如果自定义了含参构造,默认的无参构造会被覆盖,注意要手动添加哦2 构造代码块与局部代码.
2021-10-06 10:20:41
134
原创 CGB2108-Day08-面向对象-封装
面向对象概念在学习面向对象之前,我们可以先了解一下面向过程。面向过程是一种思想,意思是我们要做任何事,都需要亲力亲为,强调的是过程。面向对象也是一种编程思想,相对于面向过程,我们可以由原来问题的执行者变为指挥者,进而把生活中很多复杂的问题变得简单化。2 面向对象的三大特征是一个权限修饰符 ,可以用来修饰成员变量和成员方法.被私有化的成员只能在本类中访问4.2 private关键字是一个权限修饰符 ,可以用来修饰成员变量和成员方法.被私有化的成员只能在本类中访问关于成员变量:s
2021-10-06 10:17:10
215
原创 CGB2108-Day07-数组-数组的长度-数组的遍历-数组工具类Arrays
1 数组1.1 概念数组Array,标志是[ ] ,用于储存多个相同类型数据的集合想要获取数组中的元素值,可以通过脚标(下标)来获取数组下标是从0开始的,下标的最大值是数组的长度减11.2 创建数组数组的创建方式一般分为动态初始化和静态初始化动态初始化int[] a = new int[5];静态初始化int[] b = new int[]{1,2,3,4,5};int[] c = {1,2,3,4,5};1.3 创建数组过程分析程序创建数组 int[] a = new
2021-10-06 10:11:21
207
原创 CGB2108-Day06-break与continue- while- do-while
1 嵌套for循环1.1 概述存在至少2层for循环,根据外层的条件,判断里层能否执行如果能执行,就把里层代码都循环完毕后,再继续判断是否执行外层循环的下一次循环1.2 嵌套for形式2 break与continue2.1 概念break: 直接结束当前循环,跳出循环体,简单粗暴break以后的循环体中的语句不会继续执行,循环体外的会执行注意如果是嵌套for循环,在内层循环遇到了break,只会跳出当前这一层内循环哦continue: 跳出本轮循环,继续下一轮循环co
2021-10-06 10:06:38
135
原创 CGB2108-Day05-变量-方法-方法的重载
1 变量1.1 概念可以改变的数,称为变量。在Java语言中,所有的变量在使用前必须声明。一般通过“变量类型 变量名 = 变量值 ;”这三部分来描述一个变量。如:int a = 3 ;变量的使用原则:就近原则,即尽量控制变量的使用范围到最小1.2 局部变量位置:定义在方法里或者局部代码块中注意:必须手动初始化来分配内存.如:int i = 5;或者int i; i = 5;作用域:也就是方法里或者局部代码块中,方法运行完内存就释放了1.3 成员变量位置:定义在类里方法外注意:不用初
2021-10-06 10:02:21
131
原创 CGB2108-Day04-分支结构-switch结构-循环结构-for循环
1 分支结构1.1 概述顺序结构的程序虽然能解决计算、输出等问题但不能做判断再选择。对于要先做判断再选择的问题就要使用分支结构1.2 形式2 switch结构2.1 概述switch case 语句用来判断一个变量与一系列值中某个值是否相等,每个值称为一个分支。当一个case成立,从这个case向后穿透所有case,包括default,直到程序结束或者遇到break程序才结束2.2 形式switch结构的注意事项switch 语句中的变量类型可以是:..
2021-10-06 09:56:34
164
原创 CGB2108-Day03-Java运算符
1 运算符1.1 概述运算符 用于连接 表达式 的 操作数,并对操作数执行运算。例如,表达式num1+num2,其操作数是num1和num2,运算符是”+”。在java语言中,运算符可分为5种类型:算术运算符、赋值运算符、关系运算符、逻辑运算符、位运算符。根据操作数的不同,运算符又分为单目运算符、双目运算符和三目运算符。单目运算符只有一个操作数,双目运算符有两个操作数,三目运算符则有三个操作数。位运算符涉及到二进制位的运算,在java 程序中运用不是很多。1.2 运算符速查表...
2021-10-06 09:50:58
316
原创 CGB2108-Day02- 标识符-关键字-注释-变量-数据类型-基本类型的转换
1 JAVA语法基础1.1 标识符标识符可以简单的理解成一个名字。在Java中,我们需要给代码中的很多元素起名,包括类名、方法名、字段名、变量名等等。我们给对应元素起的名称就被称为标识符,一个正确的标识符需要遵循以下规则:1. 标识符可以由字母、数字、下划线(_)、美元符($)组成,但不能包含 @、%、空格等其它特殊字符2. 不能以数字开头。如:123name 就是不合法3. 标识符严格区分大小写。如: tmooc 和 tMooc 是两个不同的标识符4. 标识符的命名最好能反映出其作
2021-10-06 09:41:07
212
原创 CGB2108-Day01-基础知识-Java语言的特性-JDK JRE JVM
1.Java语言的特性:简单性 安全性 面向对象 高性能 编译性 解释性 分布式处理 健壮性 开源 跨平台1.1 Java语言的特性 — 跨平台性:通过Java语言编写的应用程序在不同的系统平台上都可以运行,那原理是什么?我们所写的JAVA程序是".java"为后缀的源文件,但这些文件计算机无法直接执行,需要先进行编译环节,通过编译变为以".class"为后缀的字节码文件,这个字节码文件交由JVM(JAVA虚拟机)来运行.那我们只要在需要运行java应用程序的OS(操作系统)上,安装一个
2021-10-04 14:56:47
369
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅