![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JavaSE学习笔记
文章平均质量分 82
90天Java培训学习笔记
激进的韭菜
加油,总有一天你会成为你想成为的人
展开
-
2022-07-13 学习笔记 day06-JavaSE-基础内容
计算机只能识别机器语言,高级需要翻译成机器语言才能被计算机识别并执行,但由于不同操作系统的内核不同,所以底层执行的指令也不同,所以一份相同的源程序想要运行在不同的操作系统上需要写多份,对此java开发人员通过JVM来实现java代码的可移植性。此处的”短路现象“是指,在进行与运算时,当一边的表达式结果为false时,终止后面表达式的运算,直接得出运算结果false,通过短路显现可以避免一些异常的发生。在Java中对于整数型字面值的默认类型是int类型,所以10这个字面值是int类型,即。.........原创 2022-07-13 14:57:02 · 536 阅读 · 2 评论 -
2022-07-14 学习笔记 day07-JavaSE-流程控制与数组
对于这个Test.java的源文件,通过编译生成字节码文件,字节码文件被类加载器找到后并装入到JVM(方法区)中,程序运行时JVM会调用main方法,并将main方法临时存放在栈内存中(push)。可以把数组中的元素通过镜像给变量(元素)接收,我们操作的不是原始数据,我们操作的是镜像数据,foreach的操作更加安全,不影响原始数据。---->声明一个长度为10的数组,初始化的值给定为int类型的默认值。在动态初始化中,数组元素的默认值就是数组元素类型的默认值。在Java中各种类型的默认值。........原创 2022-07-14 15:15:48 · 283 阅读 · 2 评论 -
2022-07-15 第五小组 顾祥全 学习笔记 day08-用Java代码实现算法
原理每一趟都拿第一个元素和所有的元素比较,将最小值的索引赋值为一个变量,在每趟结束后,将每趟的第一个元素和最小值所在的元素进行交换。即将目标元素和数组/集合中的元素一一比较查找,效率极低。.........原创 2022-07-15 20:21:50 · 192 阅读 · 1 评论 -
2022-07-18 第五小组 顾祥全 学习笔记 day11-JavaSE-面向对象
面向对象编程思想,是以对象为主,更符合人类的思维方式。面向对象在开发中,把程序分为不同的单元,每个单元都实现成对象(这些对象都是独立的,彼此之间的关联程度很低),在给这些对象一个环境驱动一下,让他们彼此协作起来形成一个系统(使用面向对象开发程序:==耦合度低,扩展里强==)........................原创 2022-07-17 22:13:55 · 473 阅读 · 4 评论 -
2022-07-19 第五小组 顾祥全 学习笔记 day12-JavaSE-面向对象-封装
在一个类体中的数据,假设对代码进行封装后,对于代码的调用者来说是方便的,调用者不需要考虑这个代码的具体实现,只需要有一个简单的操作入口便能使用这个代码的功能(例如java.util.Arrays这个工具类中有一个sort方法,可以对数组进行排序,这里我们并不需要考虑排序功能是如何实现的,只需要会使用这个sort方法便能使用数组排序的功能);对于类体中安全级别较高的数据,可以使用封装使外部人员不能访问,保证数据安全。对于年龄属性的设置可以通过Setter方法设置一个关卡,用于过滤所有年龄不合法的数据。....原创 2022-07-18 18:33:26 · 259 阅读 · 4 评论 -
2022-07-20 第五小组 顾祥全 学习笔记 day13-JavaSE-面向对象-继承
运行结果如下,可以看出通过重写toString()后使用println(),可以完成对对象打印的操作(toString()即返回对象的字符串表示形式)我们可以看到当String.valueOf()方法中的参数是一个Object时,会调用这个Object的toString()方法,也就是说。主要作用继承是方法覆盖的重写和多态机制的前提(有了继承关系才有后来的方法覆盖重写和多态机制)我们去println()方法中看看这个方法具体是怎么实现的(我们。“(类与类之间的关系)能描述的类,都可以使用继承。.......原创 2022-07-20 00:40:50 · 308 阅读 · 4 评论 -
2022-07-21 学习笔记 day14-JavaSE-String类与八大包装类型
在Java中为了执行效率,在类加载时刻会在方法区中会声明并初始化一个长度为256的Integer静态常量数组,其中存储了范围在[-128,127]中的Integer对象,我们将这个Integer数组为称作整数型常量池(下图是Java8源码)StringBuffer中方法都被synchronize关键字修饰,表示在多线程环境下运行时安全的,而StringBuilder中的方法没有被synchronize关键字修饰,所以StringBuilder时非线程安全的。知道了程序的内存结构,我们来分析一下下面的程序。.原创 2022-07-22 13:31:23 · 293 阅读 · 0 评论 -
2022-07-22 第五小组 顾祥全 学习笔记 day15-JavaSE-面向对象-多态
多态,即多种形态、多种状态。编译期一种形态,运行期一种形态。多态核心代码:父类型引用指向子类型对象上述代码运行结果如下对于上面的代码可以这样解释(Java程序的运行分为编译阶段和运行阶段)转型条件:只有存在继承关系才可以转型子类型 —> 父类型向上转型可以自动转换父类型 —> 子类型向下转型需要加强制类型转换符在多态中,父类型引用子类型对象时,如果需要访问子类特有的属性或方法时,需要向下转型,否则编译无法通过。在多态中,父类型引用指向子类型对象,在运行阶段会检测引用实际指向的对象,如果向上转型转原创 2022-07-22 20:57:29 · 249 阅读 · 0 评论 -
2022-07-23 第五小组 顾祥全 学习笔记 day16-JavaSE-面向对象-抽象
抽象类不能被实例化,只能由子类继承由子类实例化;但是抽象类中有构造方法,这个构造方法是给抽象类的非抽象子类提供的。* 抽象类的子类可以是抽象类也可以是非抽象类* final和abstract不能同时使用,他们是对立的(被final修饰类不能有子类,被abstract修饰的类只有子类继承才能实例化对象)...原创 2022-07-23 14:09:56 · 221 阅读 · 0 评论 -
2022-07-25 第五小组 顾祥全 学习笔记 day18-JavaSE-接口
通过上面的代码可以看出,通过接口(FoodMenu),降低了类(Customer)与类(AmericaCook/ChinaCook)之间的耦合度,程序的扩展力很高。运行结果如下,可以看出如果一个类同时实现了多个接口,哪怕这些接口之间没有继承关系,这些接口之间也能彼此进行转型,同时能通过编译期和运行期。在运行期,检测到d实际是A类型,而A类型与E类型没有实现关系(用接口模拟一个人去餐馆点餐场景,接口(菜单),接口的实现类(厨师),接口的调用者(客户)面向接口编程,降低程序之间的耦合度,提高程序的扩展力。...原创 2022-07-25 23:28:36 · 211 阅读 · 0 评论 -
2022-07-26 学习笔记 day19-JavaSE-常用API
API(ApplicationProgramInterface)——应用程序编程接口。在Java中,Java类库就是API。简单来说API就是程序对外提供的接口,供他人使用的方法或字段定义。原创 2022-07-27 00:21:43 · 303 阅读 · 2 评论 -
2022-07-27 第五小组 顾祥全 学习笔记 day20-JavaSE-static修饰符与代码块
结果如上图所示,在第一个代码块中并不能访问到第二个代码块中的内容。并且不仅只是静态代码块与静态代码块之间有顺序,静态代码块与静态变量也是有顺序的,这里就不赘述了。一旦使用了static,内容将不再属于对象,而是属于类的,存储再方法区中是线程共享的,所有的对象都可以访问。中,在类加载时刻初始化静态变量,并执行静态代码块,其中所有创建的常量、变量、引用对象都存放在静态区中。在第二个静态代码块中声明并初始化变量i,在第一个静态代码块中能被访问到变量i么?凡是被static修饰的内容都在方法区的。......原创 2022-07-27 20:30:14 · 238 阅读 · 0 评论 -
2022-07-28 学习笔记 day21-JavaSE-内部类与Lambda表达式
一般来说,类与类之间的独立的,使用内部类能打破这种独立,让一个类成为内一个类的成员,与成员变量和成员方法同级。原创 2022-07-28 23:43:21 · 394 阅读 · 0 评论 -
2022-07-29 第五小组 顾祥全 学习笔记 day22-JavaSE-异常
编写一个Java类,让其继承Exception,并在构造方法中调用父类构造,打印异常堆栈信息}}编写一个Java类,让其继承RuntimeException,并在构造方法中调用父类构造,打印异常堆栈信息}}原创 2022-07-29 20:38:42 · 256 阅读 · 1 评论 -
2022-07-31 第五小组 顾祥全 学习笔记 day24-开发原则与设计模式
先占个位,之后再总结。。。原创 2022-07-31 20:18:31 · 159 阅读 · 0 评论 -
2022-08-05 第五小组 顾祥全 学习笔记 day29-集合-Collection集合
什么是集合?集合用来存放什么?集合的分类?集合的继承关系?foreach的底层是?原创 2022-08-05 13:51:36 · 243 阅读 · 1 评论 -
2022-08-01 第五小组 顾祥全 学习笔记 day25-JavaSE-枚举与泛型
比如SuperArray在确定了泛型之后,这个超级数组就统一只放同一类型的数据,如果放入其他类型,编译不通过。对于有多种情况的选择时,我们可以使用int类型的常量也可以使用枚举,那么枚举相对int类型有什么优势呢?为例保持兼容性,Java泛型中,其实有一种类似伪泛型,因为Java在编译期间所有的泛型都会被擦掉。枚举类中的枚举对象之间以",“分割,并且最后一个枚举对象以”;在Java7开始,可以省略等号右边的泛型的声明,必须得写(规范)泛型刚刚出现的时候,还存在大量的不适用泛型的代码,............原创 2022-08-01 18:09:13 · 236 阅读 · 2 评论 -
2022-08-02 第五小组 顾祥全 学习笔记 day26-JavaSE-多线程-基础部分
对于Java程序来说,使用java.exe命令时,会启动JVM,JVM就是一个进程,JVM会启动一个线程调用main方法,以及再启动一个垃圾回收线程负责看守。使用volatile关键字来保证一个变量在一次读写操作指令重排。不推荐使用JDK提供的stop(),destroy()方法(推荐让线程自己停下来,建议使用一个标志位进行终止变量。....................................原创 2022-08-02 23:57:01 · 207 阅读 · 0 评论 -
2022-08-03 第五小组 顾祥全 学习笔记 day27-JavaSE-多线程-线程安全
线程这部分太难了,难以理解,我已经摆烂了,等学完框架后再回过头来总结把原创 2022-08-04 12:58:22 · 185 阅读 · 0 评论 -
祝所有码农七夕快乐~
以程序员的方式撒狗粮,专业浪漫,值得拥有!原创 2022-08-04 18:38:11 · 189 阅读 · 2 评论 -
2022-08-07 学习笔记 day31-JavaSE-集合-Map集合
简单来说就是,Map集合调用keySet()时会返回一个Set集合,对这个Set集合修改会导致Map集合中的内容一同修改,反之对Map集合修改也会导致Set集合内容一同修改;对映射(Map集合)的更改可以在Set中反映出来,反之亦然(即对Set集合的更改也可以在映射中反映出来),并且使用迭代器对Set集合遍历时必须使迭代器的remove()删除元素,否则迭代结果时不确定的。TreeSet集合和TreeMap集合中的存放的类型。Map中的集合都是以键值对的方式存储元素。.........原创 2022-08-08 01:03:16 · 269 阅读 · 0 评论 -
2022-08-08 第五小组 顾祥全 学习笔记 day31-Junit单元测试
LinkedList耗时:108ms (115ms、105ms、103ms)LinkedList耗时:ms (5190ms、5158ms、5232ms)ArrayList耗时:1ms (1ms、1ms、1ms)ArrayList耗时:ms (6ms、5ms、3ms)如果引入的是第三方的插件,xxx.jar的文件。测试方法的命名,test + 被测试方法的方法名。单元测试类的命名,被测试类的类名,Test。这个类提供了很多有用的断言来编写测试用例。assertNull:检查对象是否为空。......原创 2022-08-08 21:26:02 · 150 阅读 · 0 评论 -
2022-08-08 学习笔记 day31-JavaSE-File类
在java中,当前路径默认是project(项目)的根。原创 2022-08-09 00:32:23 · 312 阅读 · 4 评论 -
2022-08-09 学习笔记 day32-JavaSE-IO流
什么是IO?I:input (输入)O: output (输出)IO:通过io完成对文件的读和写什么是IO流?是内存和硬盘空间某个文件之间的,可以完成对文件的读和写。原创 2022-08-09 21:52:53 · 332 阅读 · 0 评论 -
2022-08-10 学习笔记 day33-JavaSE-反射机制
通过反射机制可以操作字节码文件,可以使代码更加灵活。原创 2022-08-11 21:06:24 · 152 阅读 · 0 评论 -
2022-08-12 学习笔记 day35-JavaSE-正则表达式
正则表达式的语法规则,贪婪模式与懒惰模式的区别,正则表达式在Java中的应用以及Pattern类与Macher类的介绍原创 2022-08-12 15:52:45 · 155 阅读 · 0 评论