JAVA 基础知识
文章平均质量分 83
从小白晋升架构
多啦@不懂a梦
这个作者很懒,什么都没留下…
展开
-
JAVA 基础(第三十天) 内部类
目录1 内部类概述2 特点3 练习 : 内部类入门案例4 成员内部类4.1 练习 : 被private修饰4.2 练习 : 被static修饰5 局部内部类6 匿名内部类1 内部类概述如果一个类存在的意义就是为指定的另一个类,可以把这个类放入另一个类的内部。就是把类定义在类的内部的情况就可以形成内部类的形式。A类中又定义了B类,B类就是内部类,B类可以当做A类的一个成员看待:2 特点1) 内部类可以直接访问外部类中的成员,包括私有成员2) 外部类要访原创 2021-11-16 09:42:25 · 810 阅读 · 0 评论 -
JAVA 基础(第二十九天)反射学习
目录1 什么是反射?2 为什么需要反射?3 反射需要用到的API3.1 获取字节码对象3.2 常用方法4 反射的应用4.1 创建 : 测试物料类4.2 练习 : 获取类对象4.3 练习 : 获取成员变量4.4 练习 : 通过字节码对象获取类的成员方法4.5 练习 : 通过字节码对象获取类的构造方法4.6 练习 : 创建对象4.7 熟悉API5 暴力反射5.1 创建 : 测试物料类5.2 练习 : 创建测试类1 什么是反射?Reflect原创 2021-11-16 09:29:28 · 448 阅读 · 2 评论 -
JAVA 基础(第二十八天)注解与自定义注解
目录1 注解2 注解的分类2.1 JDK注解2.2 元注解2.2.1 @Target ElementType…2.2.2 @Retention RetentionPolicy…3 自定义注解注意:注解的语法写法和常规java的语法写法不同1 注解注解很厉害,它可以增强我们的java代码,同时利用反射技术可以扩充实现很多功能。它们被广泛应用于三大框架底层。传统我们通过xml文本文件声明方式(如下图,但是XML比较繁琐且不易检查),而现在最主流的开发都是基于注解方式,代原创 2021-11-16 09:14:27 · 271 阅读 · 0 评论 -
JAVA 基础(第二十七天)设计模式之单例设计模式
目录1 设计模式(Design pattern)2 单例设计模式3 RunTime单例设计源码剖析4 练习:单例设计模式1-饿汉式实现方式5.单例设计模式2-懒汉式实现方式1 设计模式(Design pattern)代表了最佳的实践,通常被有经验的面向对象的软件开发人员所采用。设计模式是软件开发人员在软件开发过程中面临的一般问题的解决方案。这些解决方案是众多软件开发人员经过相当长的一段时间的试验和错误总结出来的。JAVA一共有23种设计模式,我们今天首先来学其中一种:单例设计模原创 2021-11-16 09:09:18 · 680 阅读 · 0 评论 -
JAVA 基础(第二十六天)同步锁
目录1 同步锁1.1 前言1.2 同步与异步1.3 synchronized同步关键字1.3.1 写法1.3.2 前提1.3.3 特点1.4.1练习-改造售票案例1.4.2 练习-改造售票案例1.5 之前遇到过的同步例子2 线程创建的其他方式2.1 ExecutorService/Executors2.2 练习:线程的其他创建方式3 拓展:线程锁3.1 悲观锁和乐观锁3.2 两种常见的锁3.3 尝试用读写锁改造售票案例3.4 两种方式的原创 2021-11-16 09:01:58 · 2162 阅读 · 0 评论 -
JAVA 基础(第二十五天)进程与线程
目录进程与线程1 进程1.1 进程的概念1.2 进程的特点2 线程2.1 线程的概念2.2 进程与线程的关系3 多线程的特性3.1 随机性3.2 CPU分时调度3.3 线程的状态3.4 线程状态与代码对照4 多线程代码创建方式1:继承Thread4.1 概述4.2 常用方法4.3 测试多线程的创建方式15 多线程代码创建方式2:实现Runnable接口5.1 概述5.2 常用方法5.3 练习2:测试多线程的创建方式25.4原创 2021-11-16 08:52:19 · 172 阅读 · 0 评论 -
JAVA 基础(第二十四天) 初识序列化与反序列化
目录初识序列化与反序列化1 概述2 特点/应用场景3 涉及到的流对象4 代码实现序列化与反序列化4.1 步骤1:创建学生类Student4.2 步骤2:创建序列化测试类5 测试报错NotSerializableException:6 测试报错InvalidClassException:7 为什么反序列化版本号需要与序列化版本号一致?初识序列化与反序列化1 概述序列化是指将对象的状态信息转换为可以存储或传输形式的过程.在序列化期间,对象将其当前状态写入到临时原创 2021-11-16 08:52:00 · 129 阅读 · 0 评论 -
JAVA 基础(第二十三天) 编码转换流 OutputStreamWriter InputStreamReader
目录编码转换流1 概述2 工具API学习3 常见字符编码表4 练习:编码转换测试编码转换流字节流:针对二进制文件字符流:针对文本文件,读写容易出现乱码的现象,在读写时,最好指定编码集为UTF-81 概述编码转换流(InputStreamReader/OutputStreamWriter)主要进行编码的转换,用来解决字符流读写乱码的问题2 工具API学习OutputStreamWriter :OutputStreamWriter(OutputStream原创 2021-11-15 23:43:02 · 352 阅读 · 0 评论 -
JAVA 基础(第二十二天) IO流 File 字节流 字符流
目录IO简介1 流Stream2 IO流的继承结构3 File文件类3.1概述3.2创建对象3.3常用方法3.4 练习:测试常用方法4 字节流读取4.1 InputStream抽象类4.2 FileInputStream子类4.3 BufferedInputStream子类4.4 练习:字节流读取案例5 字符流读取5.1 Reader抽象类5.2 FileReader子类5.3 BufferedReader子类5.4 练习:字符流读取案原创 2021-11-15 23:37:59 · 487 阅读 · 0 评论 -
JAVA 基础(第二十一天) Set HashSet Map HashMap
目录1 Map接口1.1 概述1.2 特点1.3 继承结构1.4 常用方法1.5 练习:Map常用方法测试2 HashMap2.1 前言2.2 HashMap的存储过程:2.3 练习:获取HashMap的数据2.4 练习:字符串中字符统计3 set接口3.1 概述3.2 Set集合的特点3.3 常用方法3.4 HashSet3.4.1 概述3.5 练习: Set相关测试3.6 练习: Set相关测试23.6 练习: Set相关测原创 2021-11-15 23:24:16 · 905 阅读 · 0 评论 -
JAVA 基础(第二十天) 泛型 Collection List Set
目录集合1 Collection接口1.1 集合前言1.2 集合概念1.3 集合的继承结构1.4 Collection方法速查表1.5 练习:Collection接口测试2 泛型2.1 概念2.2 作用2.3 泛型示例2.4 泛型声明2.5 常用名称2.6 练习:泛型测试2.7 练习:泛型测试23 List接口3.1 概述3.2 特点3.3 List方法速查表3.4 练习:List接口测试3.5 练习:List接口测试2.原创 2021-11-14 01:23:09 · 1425 阅读 · 0 评论 -
JAVA 基础(第十九天) 正则表达式 包装类 自动装箱/自动拆箱 BigDecimal
1 正则表达式Regex1.1 概述正确的字符串格式规则。常用来判断用户输入的内容是否符合格式的要求,注意是严格区分大小写的。1.2 常见语法1.3 String提供了支持正则表达式的方法Matches(正则) : 当前字符串能否匹配正则表达式replaceAll(正则,子串) : 替换子串split(正则) : 拆分字符串1.4 练习:测试输入身份证号创建包: cn.tedu.api创建类: TestRegex.javapackage cn.tedu.api;原创 2021-11-13 18:14:57 · 1463 阅读 · 0 评论 -
JAVA 基础(第十八天) Object String StringBuffer/StringBuilder
1 前言亲爱的小伙伴萌,目前我们看到的是Java基础部分的一个新的部分API,这是个啥,又能做啥呢?其实可以概括成一句话:帮助我们站在巨人的肩膀上,实现更加高效的开发,那么我们来一探究竟吧~2 什么是APIAPI(Application Programming Interface,应用程序接口)是一些预先定义的函数。目的是提供应用程序与开发人员基于某软件可以访问的一些功能集,但又无需访问源码或理解内部工作机制的细节.API是一种通用功能集,有时公司会将API作为其公共开放系统,也就是.原创 2021-11-13 18:06:33 · 181 阅读 · 0 评论 -
JAVA 基础( 第十七天) 异常
目录异常1 概述2 异常的继承结构3 异常的处理方式4 练习:异常测试5 拓展1 catch 和 throws6 拓展26 拓展3异常1 概述异常是一些用来封装错误信息的对象它由异常的类型、提示信息、报错的行号提示三部分组成2 异常的继承结构3 异常的处理方式当程序中遇到了异常,通常有两种处理方式:捕获或者向上抛出当一个方法抛出异常,调用位置可以不做处理继续向上抛出,也可以捕获处理异常大家可以结合生活中的例子:如果工作中遇到了问题,我们.原创 2021-11-13 16:45:58 · 406 阅读 · 0 评论 -
JAVA 基础(第十六天) 构造函数 构造代码块 this
目录1 构造方法1.1 概念1.2 形式1.3 练习:构造方法创建对象/构造方法赋值2 构造代码块与局部代码块2.1形式:2.2 构造代码块的特点2.3局部代码块2.4练习:测试代码块的加载顺序3 this3.1概念3.2 形式3.3 练习: this练习之变量名相同时使用3.4 练习:this练习之构造方法间的调用4 拓展练习4.1 :创建Teacher类进行OOP综合练习之封装4.2 创建对象的流程1 构造方法1.1 概念原创 2021-11-13 16:41:19 · 142 阅读 · 0 评论 -
JAVA 基础(第十五天) 静态/构造/局部代码块之间的关系
目录1 static1.1 概念1.2 特点1.3 练习:static入门案例1.4 练习:static静态调用关系2 静态代码块、构造代码块、局部代码块2.1 静态代码块格式2.2 三种代码块的比较2.3 练习:几种代码块的关系3 final3.1 概念3.2 特点3.3 练习:final入门案例1 static1.1 概念是java中的一个关键字用于修饰成员(成员变量和成员方法)1.2 特点1.static可以修饰成员变量和方法原创 2021-11-13 16:29:35 · 518 阅读 · 0 评论 -
JAVA 基础 (第十四天) 面向接口开发
目录接口1 接口的概念2 接口格式3 接口的特点:4.1 练习-1:创建接口4.2 练习-2:创建接口实现类4.3 练习-3:创建接口测试类5 接口的用法5.1 练习: 接口之构造方法5.2 练习: 接口之成员变量5.3 练习: 接口之成员方法6 练习:分析老师示例—面向接口编程7 接口的多继承多实现8 总结1. 类与类的关系2. 类和接口的关系3. 接口与接口的关系4.接口与抽象类的区别接口1 接口的概念与之前学习过的..原创 2021-11-13 16:23:58 · 948 阅读 · 0 评论 -
JAVA 基础(第十三天) 抽象类
抽象类1 概念Java中可以定义被abstract关键字修饰的方法,这种方法只有声明,没有方法体,叫做抽象方法.Java中可以定义被abstract关键字修饰的类,被abstract关键字修饰的类叫做抽象类如果一个类含有抽象方法,那么它一定是抽象类抽象类中的方法实现交给子类来完成2 抽象方法的格式3 特点abstract 可以修饰方法或者类被abstarct修饰的类叫做抽象类,被abstract修饰的方法叫做抽象方法抽象类中可以没有抽象方法如果类中有抽象方法.原创 2021-11-13 16:14:32 · 140 阅读 · 0 评论 -
JAVA 基础(第十二天) 面向对象 多态
目录多态1. 概念2 . 特点3. 练习:多态入门案例4. 多态的好处5. 多态的使用6. 练习:多态成员使用测试7 拓展7.1 设计汽车综合案例7.2 多态为了统一调用标准7.3 静态变量和实例变量的区别7.4 向上转型和向下转型多态1. 概念多态是面向对象程序设计(OOP)的一个重要特征,指同一个实体同时具有多种形式,即同一个对象,在不同时刻,代表的对象不一样,指的是对象的多种形态。可以把不同的子类对象都当作父类来看,进而屏蔽不同子类对象之原创 2021-11-13 16:10:41 · 337 阅读 · 0 评论 -
JAVA 基础(第十一天) 面相对象 继承
目录1 继承1.1概念1.2 特点1.3 练习:继承入门案例2 super3 继承的用法3.1 练习:super之继承中成员变量使用3.2 练习:super之继承中构造方法的使用4 方法重写Override4.1 练习:继承中成员方法的使用5. 拓展5.1 继承的好处与坏处5.1 this与super的区别5.2 重载Overload 与重写Override的区别1 继承1.1概念继承是面向对象最显著的一个特征继承是从已有的类中派生出原创 2021-11-13 16:01:31 · 1285 阅读 · 0 评论 -
JAVA基础(第十天) 面向对象 类 对象 封装
目录1.面向对象概念2 面向对象的三大特征3 类和对象3.1 类3.2 对象3.3 类和对象的关系3.4 练习:类的创建使用3.5 对象在内存中的存储对象的创建过程分析:3.6 练习2:创建多个对象4 封装4.1 概述4.2 private关键字4.3.1练习:封装的必要性4.3.2 练习:封装学生案例4.3.3 练习:封装方法测试5 拓展:OOP综合练习6 访问控制符拓展7 匿名对象1.面向对象概念在学习面向对象之前,.原创 2021-11-11 09:47:02 · 751 阅读 · 0 评论 -
JAVA 基础(第九天) 数组 数组工具类
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[].原创 2021-11-07 22:44:08 · 854 阅读 · 0 评论 -
Java 基础(第八天)方法 局部变量 成员变量
目录1 变量1.1 概念1.2 局部变量1.3 成员变量1.4 练习:变量的默认值测试1.5 练习:局部变量与成员变量测试2 方法2.1 概述2.2 方法定义的格式2.3 方法调用顺序图2.4 练习:测试方法的调用顺序/参数/返回值2.5 方法的重载1 变量1.1 概念可以改变的数,称为变量。在Java语言中,所有的变量在使用前必须声明。一般通过“变量类型 变量名 = 变量值 ;”这三部分来描述一个变量。如:int a = 3 ;变量的使用原创 2021-11-07 22:36:27 · 911 阅读 · 0 评论 -
JAVA 基础(第七天) 嵌套for循环 while do-while
1 嵌套for循环1.1 概述存在至少2层for循环,根据外层的条件,判断里层能否执行如果能执行,就把里层代码都循环完毕后,再继续判断是否执行外层循环的下一次循环1.2 嵌套for形式1.3 练习:嵌套for循环入门案例创建包: cn.tedu.basic创建类: TestForDemo.java总结1:外循环执行1次,内循环执行多次总结2:外循环控制行,内循环控制列package cn.tedu.basic;/*本类用于测试嵌套for循环*/publi.原创 2021-11-07 22:26:29 · 202 阅读 · 0 评论 -
JAVA 基础(第六天) 分支结构 switch结构 for循环
目录1 分支结构1.1 概述1.2 形式1.3.1 练习:商品打折案例1.3.2 练习: 统计学员得分段位案例2 switch结构2.1 概述2.2 形式2.3 练习:数字匹配2.4 练习: Switch中的String类型2.5 switch结构的注意事项3 循环结构3.1 for概述3.2 for形式3.3 for循环执行顺序我们明明只写了一句打印语句,为什么打印了多个数字呢?希望通过下图帮你理解for循环的执行顺序:3.4 练习:打印.原创 2021-11-07 22:17:50 · 697 阅读 · 0 评论 -
JAVA 基础 (第五天)
目录1 JAVA语法基础1.1 标识符1.2 关键字1.3.1 注释1.3.2 练习:1.4 变量1.5 常量2 数据类型2.1 基本类型介绍(八种)2.2 练习: 输入个人信息2.3 练习:查看基本类型的最大值与最小值2.4 练习:求圆形的面积2.5 练习:变量交换2.6 引用类型3 基本类型的字面值(5条)3.1 整数类型的字面值类型是int类型3.2 浮点数类型的字面值类型是double类型3.3 byte,short,char三原创 2021-11-07 22:08:00 · 1416 阅读 · 0 评论 -
Java 基础 (第四天) JAVA编程环境搭建 JDK与环境变量、Eclipse
目录1 JDK1.1 JDK概述1.2 JDK下载与安装1.3 目录介绍1.4 环境变量的配置2 Eclipse使用Eclipse1 JDK1.1 JDK概述JDK是 Java 语言的软件开发工具包,主要用于移动设备、嵌入式设备上的java应用程序。JDK是整个java开发的核心,它包含了:JAVA开发工具(jdk\bin)基础开发库(jdk\jre\lib\rt.jar)基础开发库的源码(jdk\src.zip)1.2 JDK下载与安装本次原创 2021-11-07 21:14:27 · 139 阅读 · 0 评论 -
JAVA 基础 (第三天)
1 计算机基础知识1.1计算机计算机(Computer)全称:电子计算机,俗称电脑。是一种能够按照程序运行,自动、高速处理数据的现代化智能电子设备。常见的形式有台式计算机、笔记本计算机。按照规模分为微型机、小型机、大型机、巨型机(超级计算机)等。计算机发明者约翰•冯•诺依曼。计算机是20世纪最先进的科学技术发明之一,对人类的生产活动和社会活动产生了极其重要的影响,并以强大的生命力飞速发展。它的应用领域从最初的军事科研应用扩展到社会的各个领域,已形成了规模巨大的计算机产业,带动了全球范围的技术进原创 2021-11-07 20:58:44 · 95 阅读 · 0 评论 -
JAVA基础(第二天)
目录一、语言的五大特性二、类三、对象间的四种关系1、依赖2、关联3、聚合4、组合三、封装、继承、多态1、封装2、继承3、多态四、单根层次结构五、集合六、泛型七、对象的创建和声明周期八、异常处理九、数据保存在哪里1、寄存器2、栈3、堆4、常量存储5、非RAM存储十、Java中的一些常见概念1、数组2、移位操作符3、按位操作符4、三元运算符一、语言的五大特性1、万物皆对象2、程序就是多个原创 2021-11-02 15:53:10 · 652 阅读 · 0 评论 -
Java学习路线总结(第一天)
1.JAVASE2.JAVAEWB3.数据库4.SSM5.SpringBoot6.数据结构算法7.JVM8.Linux9.SpringCloud10.消息中间件11.计算机网络12.Vue原创 2021-11-02 15:24:14 · 126 阅读 · 0 评论