笔记
文章平均质量分 82
魏帅坤
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
JavaSE就业面试重点
- 详细介绍下static关键字的使用?(静态类、静态方法使用); static关键字是静态的意思,是java中的一个修饰符,可以修饰成员方法,成员变量. 被static修饰的特点: 1,被类的所有对象共享 是我们判断是否使用静态关键字的条件 2,随着类的加载而加载,优先于对象存在 对象需要类被加载后,才能创建 3,可以通过类名调用 也可以通过对象名调用 - Java继承好处和坏处,详细介绍; 继承是面向对象三大特征之一,可以使得子类具有父类的属性和方法,还可以在子类中重新定义,以及追加属性和方法 通过ex原创 2021-01-15 16:44:27 · 235 阅读 · 0 评论 -
笔记 -18- 单元测试工具JUnit 日志Log4J
1.单元测试 1.1概述【理解】 JUnit是一个 Java 编程语言的单元测试工具。JUnit 是一个非常重要的测试工具 1.2特点【理解】 JUnit是一个开放源代码的测试工具。 提供注解来识别测试方法。 JUnit测试可以让你编写代码更快,并能提高质量。 JUnit优雅简洁。没那么复杂,花费时间较少。 JUnit在一个条中显示进度。如果运行良好则是绿色;如果运行失败,则变成红色。 1.3使用步骤【应用】 使用步骤 将junit的jar包导入到工程中 junit-4.9.jar 编写测试方法该原创 2021-01-07 21:12:30 · 549 阅读 · 1 评论 -
笔记 -17- xml概述 枚举 注解
1.xml 1.1概述【理解】 万维网联盟(W3C) 万维网联盟(W3C)创建于1994年,又称W3C理事会。1994年10月在麻省理工学院计算机科学实验室成立。 建立者: Tim Berners-Lee (蒂姆·伯纳斯·李)。 是Web技术领域最具权威和影响力的国际中立性技术标准机构。 到目前为止,W3C已发布了200多项影响深远的Web技术标准及实施指南, 如广为业界采用的超文本标记语言HTML(标准通用标记语言下的一个应用)、 可扩展标记语言XML(标准通用标记语言下的一个子集) 以及原创 2021-01-07 09:18:53 · 209 阅读 · 0 评论 -
笔记 - 16 - 类加载器 反射
1.类加载器 1.1类加载器【理解】 作用 负责将.class文件(存储的物理文件)加载在到内存中 1.2类加载的过程【理解】 类加载时机 创建类的实例(对象) 调用类的类方法 访问类或者接口的类变量,或者为该类变量赋值 使用反射方式来强制创建某个类或接口对应的java.lang.Class对象 初始化某个类的子类 直接使用java.exe命令来运行某个主类 类加载过程 加载 通过包名 + 类名,获取这个类,准备用流进行传输 在这个类加载到内存中 加载完毕创建一个class对象原创 2021-01-05 20:42:53 · 196 阅读 · 0 评论 -
笔记-15 网络编程入门 UDP通信程序 TCP通信程序 练习
问答题 题目1 请写出端口号的范围 0 ~ 65535 题目2 判断下列说法是否正确: 由于TCP是面向连接的协议,可以保证数据的完整性,因此在传输重要数据时建议采用TCP协议. 正确,TCP协议是面向连接的,有3次握手的过程,可以保证数据的完整性; 题目3 TCP协议中”三次握手”,指的是什么? 第一次握手,客户端向服务器端发出连接请求,等待服务器确认 第二次握手,服务器端向客户端回送一个响应,通知客户端收到了连接请求 第三次握手,客户端再次向服务器端发送确认信息,确认连接 对应的代码就是 创建客原创 2021-01-05 19:48:24 · 579 阅读 · 2 评论 -
笔记-15 网络编程入门 UDP通信程序 TCP通信程序 服务端优化
1.网络编程入门 1.1 网络编程概述【理解】 计算机网络 是指将地理位置不同的具有独立功能的多台计算机及其外部设备,通过通信线路连接起来,在网络操作系统,网络管理软件及网络通信协议的管理和协调下,实现资源共享和信息传递的计算机系统 网络编程 在网络通信协议下,不同计算机上运行的程序,可以进行数据传输 1.2 网络编程三要素【理解】 IP地址 要想让网络中的计算机能够互相通信,必须为每台计算机指定一个标识号,通过这个标识号来指定要接收数据的计算机和识别发送的计算机,而IP地址就是这个标识号。原创 2021-01-03 21:17:33 · 291 阅读 · 0 评论 -
笔记 - 14 多线程 synchronized CountDownLatch wait notify 练习
题目1 请利用线程间通信, 完成连续打印1-100的数字, 要求一条线程专门打印奇数,另外一条专门用来打印偶数 要求: 1:数字打印必须是有序的,既1–100的顺序不能乱; 2:必须使用多线程技术; 效果: … 参考答案: public class A { public static int number = 1; public static void main(String[] args) { Object lock = n原创 2021-01-03 21:03:42 · 574 阅读 · 1 评论 -
笔记-14-多线程 线程池 volatile 悲观锁和乐观锁 并发工具类ConcurrentHashMap
1.线程池 1.1 线程状态介绍 当线程被创建并启动以后,它既不是一启动就进入了执行状态,也不是一直处于执行状态。线程对象在不同的时期有不同的状态。那么Java中的线程存在哪几种状态呢?Java中的线程 状态被定义在了java.lang.Thread.State枚举类中,State枚举类的源码如下: public class Thread { public enum State { /* 新建 */ NEW , /* 可运行状态原创 2021-01-02 20:57:06 · 610 阅读 · 0 评论 -
笔记-13-多线程 Thread方法 线程安全 生产者和消费者 死锁和阻塞 练习
题目1 编写程序,创建两个线程对象,一根线程循环输出“播放背景音乐”,另一根线程循环输出“显示画面”; 要求: 1: 1个线程使用Runnable接口的匿名内部类实现 2: 另一个线程使用lambda实现 效果: 参考答案: public static void main(String[] args) { //匿名内部类 new Thread(new Runnable() { @Override public void run原创 2021-01-02 18:07:14 · 2076 阅读 · 8 评论 -
笔记-13-多线程 Thread方法 线程安全 生产者和消费者 死锁和阻塞
1.实现多线程 1.1简单了解多线程【理解】 是指从软件或者硬件上实现多个线程并发执行的技术。 具有多线程能力的计算机因有硬件支持而能够在同一时间执行多个线程,提升性能。 1.2并发和并行【理解】 并行:在同一时刻,有多个指令在多个CPU上同时执行。 并发:在同一时刻,有多个指令在单个CPU上交替执行。 1.3进程和线程【理解】 进程:是正在运行的程序 独立性:进程是一个能独立运行的基本单位,同时也是系统分配资源和调度的独立单位 动态性:进程的实质是程序的一次执行过程,进程是动态产生,原创 2020-12-31 16:58:49 · 301 阅读 · 0 评论 -
笔记 - 12 字符流 对象操作流 Properties 练习
题目1[字符流] 请使用“便捷字符流”配合数组将文件"窗里窗外"的内容打印到控制台,并统计出读文本共使用的时间; 效果: 参考代码: public static void main(String[] args) throws IOException { long t1 = System.currentTimeMillis(); FileReader fr = new FileReader("窗里窗外.txt",Charset.forName("gbk"));原创 2020-12-31 13:43:47 · 977 阅读 · 0 评论 -
笔记 - 12 字符流 对象操作流 Properties
1.字符流 1.1为什么会出现字符流【理解】 字符流的介绍 由于字节流操作中文不是特别的方便,所以Java就提供字符流 字符流 = 字节流 + 编码表 中文的字节存储方式 用字节流复制文本文件时,文本文件也会有中文,但是没有问题,原因是最终底层操作会自动进行字节拼接成中文,如何识别是中文的呢? 汉字在存储的时候,无论选择哪种编码存储,第一个字节都是负数 1.2编码表【理解】 什么是字符集 是一个系统支持的所有字符的集合,包括各国家文字、标点符号、图形符号、数字等 l计算机要准确的存储和识别各原创 2020-12-30 20:47:23 · 251 阅读 · 0 评论 -
笔记 -11- File. IO概述 字节流 缓冲流 练习
day11-File与IO课后作业题 题目1[File] 请在D盘根目录下创建一个文件:test1.txt(随意录入一些内容),再创建一个目录:测试目录 要求: 获取、打印file1和file2的绝对路径; 获取、打印file1和file2的文件名和目录名; 获取、打印file1和file2的文件大小; 分别判断file1和file2是否存在; 分别判断file1和file2是否是文件?是否是目录? 效果: 参考代码: public static void main(String原创 2020-12-28 20:36:35 · 1385 阅读 · 5 评论 -
笔记 -11- File. IO概述 字节流 缓冲流
1.File类 1.1File类概述和构造方法【应用】 File类介绍 它是文件和目录路径名的抽象表示 文件和目录是可以通过File封装成对象的 对于File而言,其封装的并不是一个真正存在的文件,仅仅是一个路径名而已.它可以是存在的,也可以是不存在的.将来是要通过具体的操作把这个路径的内容转换为具体存在的 File类的构造方法 方法名 说明 File(String pathname) 通过将给定的路径名字符串转换为抽象路径名来创建新的 File实例 File(Strin原创 2020-12-27 19:02:19 · 279 阅读 · 0 评论 -
笔记 - 10 集合(可变参数 Stream流) 练习
题目1[可变参数] 定义一个方法,可以求出任意个整数的和.然后在主方法中调用. 要求: 调用方法的时候,实参随便写就行,本题重点考察的是自定义方法的形参设计; 效果: (实参随便写,所以求和的结果不一样也行) 参考代码: public static void main(String[] args) { int i1 = add2(1, 2); int i2 = add2(2,3,4); int i3 = add2(100, 200,300,400);原创 2020-12-26 16:41:47 · 1369 阅读 · 3 评论 -
笔记 - 10 集合(可变参数 Stream流)
1.可变参数 1.1可变参数【应用】 可变参数介绍 可变参数又称参数个数可变,用作方法的形参出现,那么方法参数个数就是可变的了 方法的参数类型已经确定,个数不确定,我们可以使用可变参数 可变参数定义格式 修饰符 返回值类型 方法名(数据类型… 变量名) { } 可变参数的注意事项 这里的变量其实是一个数组 如果一个方法有多个参数,包含可变参数,可变参数要放在最后 可变参数的基本使用 public class ArgsDemo01 { public static void原创 2020-12-25 21:13:10 · 244 阅读 · 0 评论 -
笔记 09-集合(HashSet HashMap TreeMap) 练习
题目1 假如你有3个室友,请使用HashSet集合保存3个室友的信息; 信息如下: 赵丽颖,18 范冰冰,20 杨幂,19 要求: 1:室友以对象形式存在,包含姓名和年龄两个属性; 2:使用代码保证集合中同名同年龄的对象只有一份;(相同姓名和年龄的对象认为是同一个对象) 效果: [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-9z2H0fQe-1608896298578)(assets/1.png)] 参考答案: public class ShiYou { privat原创 2020-12-25 19:41:58 · 741 阅读 · 0 评论 -
笔记 集合(红黑树 HashSet Map HashMap TreeMap)
1.红黑树 1.1概述【理解】 红黑树的特点 平衡二叉B树 每一个节点可以是红或者黑 红黑树不是高度平衡的,它的平衡是通过"自己的红黑规则"进行实现的 红黑树的红黑规则有哪些 每一个节点或是红色的,或者是黑色的 根节点必须是黑色 如果一个节点没有子节点或者父节点,则该节点相应的指针属性值为Nil,这些Nil视为叶节点,每个叶节点(Nil)是黑色的 如果某一个节点是红色,那么它的子节点必须是黑色(不能出现两个红色节点相连 的情况) 对每一个节点,从该节点到其所有后代叶节点的简单原创 2020-12-24 19:44:22 · 257 阅读 · 1 评论 -
笔记-09 - 集合(泛型 Set TreeSet 二叉树) 练习
编程题【Set接口】 题目1 已知数组信息如下: {2.2,5.5,6.6,2.2,8.8,1.1,2.2,8.8,5.5,2.2,6.6} 请使用代码找出上面数组中的所有的数据,要求重复的数据只能保留一份; 要求: 使用HashSet集合实现; 效果: 参考答案: public static void main(String[] args) { double[] arr = {2.2,5.5,6.6,2.2,8.8,1.1,2.2,8.8,5.5,2.2,6.6}; Ha原创 2020-12-24 18:56:04 · 628 阅读 · 1 评论 -
笔记-09 - 集合(泛型 Set TreeSet 二叉树)
1.泛型 1.1泛型概述【理解】 泛型的介绍 泛型是JDK5中引入的特性,它提供了编译时类型安全检测机制 泛型的好处 把运行时期的问题提前到了编译期间 避免了强制类型转换 泛型的定义格式 <类型>: 指定一种类型的格式.尖括号里面可以任意书写,一般只写一个字母.例如: <类型1,类型2…>: 指定多种类型的格式,多种类型之间用逗号隔开.例如: <E,T> <K,V> 1.2泛型类【应用】 定义格式 修饰符 class 类名&原创 2020-12-23 21:20:08 · 279 阅读 · 0 评论 -
笔记 08 - 集合(Collection 增强for List LinkedList)练习
问答题【Collection接口】 1.1 请问Collection接口下有哪些类型的集合?它们分别是什么? ArrayList.LinkedList.(List) : 存取有序,有索引,元素可重复 set 元素不可重复 1.2 请问Collection接口中定义的方法,它的所有子类是否都有,而且都会实现这些方法? 有,会 1.3 请问向Collection集合添加一个元素用什么方法? add() 1.4 请问从Collection集合中删除一个元素用什么方法?这个方法有返回值吗? rem原创 2020-12-23 20:13:44 · 1931 阅读 · 1 评论 -
笔记 - 08 - 集合(Collection 增强for List LinkedList)
1.Collection集合 1.1数组和集合的区别【理解】 相同点 都是容器,可以存储多个数据 不同点 数组的长度是不可变的,集合的长度是可变的 数组可以存基本数据类型和引用数据类型 集合只能存引用数据类型,如果要存基本数据类型,需要存对应的包装类 1.2集合类体系结构【理解】 1.3Collection 集合概述和使用【应用】 Collection集合概述 是单例集合的顶层接口,它表示一组对象,这些对象也称为Collection的元素 JDK 不提供此接口的任何直接实现.原创 2020-12-23 16:52:28 · 224 阅读 · 0 评论 -
笔记06 - 时间类 - 异常
编程题(时间日期相关) 题目1 请在控制台以“xxxx年xx月xx日 xx时xx分xx秒”的格式打印当前系统时间。 要求: 1:使用Date+SimpleDateFormat完成一遍, 2:再使用LocalDateTime+DateTimeFormatter完成一遍; 提示: 获取当前时间对象之后,直接利用格式化工具格式化即可; 参考代码: public static void main(String[] args) { //方式1 Date d = new Date();原创 2020-12-21 21:20:47 · 956 阅读 · 1 评论 -
笔记07 - 常用API - 异常 - 02
1.时间日期类 1.1 Date类(应用) 计算机中时间原点 1970年1月1日 00:00:00 时间换算单位 1秒 = 1000毫秒 Date类概述 Date 代表了一个特定的时间,精确到毫秒 Date类构造方法 方法名 说明 public Date() 分配一个 Date对象,并初始化,以便它代表它被分配的时间,精确到毫秒 public Date(long date) 分配一个 Date对象,并将其初始化为表示从标准基准时间起指定的毫秒数 示例代码 publ原创 2020-12-20 21:08:13 · 246 阅读 · 1 评论 -
笔记06 - API(Math System BigDecimal)
day05-课后作业 编程题【Math类】 请编程进行以下运算: 请计算3的5次幂 请计算3.2向上取整的结果 请计算3.8向下取整的结果 请计算5.6四舍五入取整的结果 参考答案: public static void main(String[] args) { System.out.println(Math.pow(3, 5)); System.out.println(Math.ceil(3.2)); System.out.println(Math.flo原创 2020-12-19 16:34:05 · 550 阅读 · 1 评论 -
笔记05 - 常用API - 01
1.API 1.1 API概述【理解】 什么是API API (Application Programming Interface) :应用程序编程接口 java中的API 指的就是 JDK 中提供的各种功能的 Java类,这些类将底层的实现封装了起来,我们不需要关心这些类是如何实现的,只需要学习这些类如何使用即可,我们可以通过帮助文档来学习这些API如何使用。 1.2 如何使用API帮助文档【应用】 打开帮助文档 找到索引选项卡中的输入框 在输入框中输入Random原创 2020-12-19 16:21:29 · 172 阅读 · 1 评论 -
笔记04-内部类和Lambda表达式
1.内部类 1.1 内部类的基本使用(理解) 内部类概念 在一个类中定义一个类。举例:在一个类A的内部定义一个类B,类B就被称为内部类 内部类定义格式 格式&举例: /* 格式: class 外部类名{ 修饰符 class 内部类名{ } } */ class Outer { public class Inner { } } 内部类的访问特点 内部类可以直接访问外部类的成员,包括私有 外原创 2020-12-17 19:09:57 · 190 阅读 · 0 评论 -
笔记03-接口和多态
1.接口 1.1信息管理系统集合改进 (应用) 使用数组容器的弊端 容器长度是固定的,不能根据添加功能自动增长 没有提供用于赠删改查的方法 优化步骤 创建新的StudentDao类,OtherStudentDao 创建ArrayList集合容器对象 OtherStudentDao中的方法声明,需要跟StudentDao保持一致 注意:如果不一致,StudentService中的代码就需要进行修改 完善方法(添加、删除、修改、查看) 替换StudentService中的Dao对原创 2020-12-17 19:06:17 · 175 阅读 · 0 评论 -
笔记02-继承练习
问答题【继承】 1.1 请问子类继承父类用什么关键字? extends 1.2 请问子类继承父类的好处是什么? 1:可以提升代码的复用性; 2:子类对象可以直接使用父类非私有的属性和方法; 1.3 请问父类的哪些成员不能被子类继承,或者不能被直接访问? 私有的 1.4 请问子类是否可以同时继承多个父类? 不可以 问答题【抽象类】 4.1 请问定义抽象类、抽象方法使用的关键字是什么? abstract 4.2 请问定义抽象类有什么作用? 1:可以作为设计模式使用;(例如:模板模式) 2:可以通过抽.原创 2020-12-17 19:00:45 · 1157 阅读 · 0 评论 -
笔记02-继承
1. 继承 1.1 继承的实现(掌握) 继承的概念 继承是面向对象三大特征之一,可以使得子类具有父类的属性和方法,还可以在子类中重新定义,以及追加属性和方法 实现继承的格式 继承通过extends实现 格式:class 子类 extends 父类 { } 举例:class Dog extends Animal { } 继承带来的好处 继承可以让类与类之间产生关系,子父类关系,产生子父类后,子类则可以使用父类中非私有的成员。 示例代码 public class Fu {原创 2020-12-15 20:13:07 · 231 阅读 · 0 评论 -
笔记01.分类思想-static
1.案例驱动模式 1.1案例驱动模式概述 (理解) 通过我们已掌握的知识点,先实现一个案例,然后找出这个案例中,存在的一些问题,在通过新知识点解决问题 1.2案例驱动模式的好处 (理解) 解决重复代码过多的冗余,提高代码的复用性 解决业务逻辑聚集紧密导致的可读性差,提高代码的可读性 解决代码可维护性差,提高代码的维护性 2.分类思想 2.1分类思想概述 (理解) 分工协作,专人干专事 2.2黑马信息管理系统 (理解) Student类 标准学生类,封装键盘录入的学生信息(id , name , a原创 2020-12-15 20:08:23 · 183 阅读 · 0 评论 -
笔记-08-(2)
单选题 1:下面是关于String类 API 当中与判断相关的方法,哪一个可以用于忽略大小写验证码的判断(B) A: public boolean equals(Object anObject){ … } B: public boolean equalsIgnoreCase(String anotherString){ … } C: public boolean endsWith(String suffix){ … } D: public boolean startsWith(String prefix)原创 2020-12-06 16:51:04 · 487 阅读 · 0 评论 -
笔记-08-(1)
1.训练案例1 1.1.需求 自定义一个方法,让用户输入一个“QQ号码”,在方法中判断这个QQ号码是否合法。 1.2.要求 验证规则: 号码长度必须是5—12位数字; 首位不能是0; 1.3.思路提示 可以让用户通过键盘输入一个字符串数据,我们自定义的方法中接受字符串数据,然后判断字符串的长度是否合法,如果合法则遍历这个字符串,判断首位是不是1-9之间的字符,然后判断后面的每一个字符是不是0-9之间的字符,只有都合法的时候才返回true,否则返回false; package com.shengd原创 2020-12-06 16:49:40 · 188 阅读 · 0 评论 -
笔记-07-(2)
单选题 1:下列信息中包含的内容不是类与对象关系的是( C) A: 学生和小明同学 B: 电脑和联想Y430电脑 C: 猫和狗 D: 手机和华为P20手机 2:下列描述正确的是(A ) c A: 类与对象之间是包含关系,类包含对象。 B: 类与对象之间是等价关系,类和对象其实是同一个概念。 C: 对象是类的实例,类是对象的模板。 D: 通过一个类,只能创建一个对象。 3:下列描述正确的是(C ) d A: 类是描述事原创 2020-12-05 21:06:58 · 859 阅读 · 0 评论 -
笔记-07-(1)
1.训练案例1 1.1. 训练描述:【Scanner,类和对象】 一、 实现从控制台接收一个学员信息,并存储到一个对象中 二、 打印这个对象的所有属性值。 1.2.要求描述 l 设计,并定义一个学员类:Student,要求有以下属性: 学员编号(String) 姓名(String) 性别(String) 身高(double) 年龄(int) 使用封装的原则,并提供无参和全参的构造方法。 1 定义MainApp类,并包含main()方法。 2 程序启动后,应分别原创 2020-12-05 21:05:21 · 514 阅读 · 0 评论 -
笔记-06-(2)
day06课后作业题 单选题 1.下列代码的运行结果是( D) public static void main(String[] args) { int sum=0; for (int i = 1; i < 3; i++) { for (int j = 1; j < 3; j++) { sum+=i*j; } } System.out.println("sum="+sum); } A.sum=3 B.sum=4 C.sum=9 D.sum=5 2.下原创 2020-12-05 21:03:26 · 251 阅读 · 0 评论 -
笔记-06-(1)
1.训练案例1 1.1.训练描述 自定义一个方法,根据用户键盘录入的行和列,能打印出对应行对应列的矩形; 例如: 当用户希望打印3行5列打印出效果如下: ***** ***** ***** 当用户希望打印4行8列打印出效果如下: ******** ******** ******** ******** 1.2.操作步骤描述 打印这种有规则的图形,可以利用循环嵌套的思路实现,内循环负责打印一行中的元素,外循环负责打印行数; import java.util.Scanner; public class Zu原创 2020-12-05 21:01:12 · 147 阅读 · 0 评论 -
笔记-05-(2)
单选题 1.要想使如下代码运行结果是:我是黑马程序员,则横线处应该填写的正确代码是(C ) public static void main(String[] args){ ________________________________ } public static void method(){ System.out.println("我是程序员"); } A:method; B:void v = method(); C:method(); D:method(“我是黑马原创 2020-12-05 21:00:02 · 508 阅读 · 0 评论 -
笔记-05-(1)
1. 训练案例1 1.1. 训练描述 设计一个方法,用于比较两个数组{10,20,30,11}和{10,20,30,13}是否相同。在main方法中调用该方法测试功能 数组内容相同,指的是元素个数相同,元素值相同,并且元素顺序相同,条件缺一不可。 1.2. 操作步骤描述 定义两个数组 创建方法,比较两个数组是否相同, main方法中调用创建的方法 根据返回值打印不同的内容 public class ZuoYe01 { public static void main(String[] arg原创 2020-12-05 20:57:26 · 270 阅读 · 0 评论 -
笔记-04-(2)
单选题 1.数组a的第三个元素表示为( D) A.a(3) B.a[3] C.a(2) D.a[2] 2.下面正确的初始化语句是(C ) A. char str[]=“hello”; B. char str[100]=“hello”; C. char str[]={‘h’,‘e’,‘l’,‘l’,‘o’}; D. char str[]={‘hello’}; 3.数组在Java中储存在(C ) 中 A.栈 B.队列 C.堆 D.链表 4.关于数组默认值,错误的是(B ) A.double – 0.0 B.bo原创 2020-12-05 20:56:13 · 2183 阅读 · 0 评论
分享