Java
Leviiiiiiiiiiiiiii
这个作者很懒,什么都没留下…
展开
-
设计模式心得
由一个基类衍生出由不同参数决定的实例。类似以前写的,在不同的参数判断条件下返回不同的实例。需要三个角色:工厂、抽象产品、具体产品。是静态的工厂是因为是工厂内已经对类实例化了,把实例化和对对象的使用分离开来了。原创 2022-11-12 16:51:19 · 215 阅读 · 0 评论 -
【力扣】因一题引发的知识点(Arraylist转整型数组问题与栈size不能作为循环判断)
剑指 Offer 06. 从尾到头打印链表输入一个链表的头节点,从尾到头反过来返回每个节点的值(用数组返回)。输入:head = [1,3,2]输出:[2,3,1]笔者现在在二刷剑指offer,从一到很简单的题目中又收获到了很多知识点。笔者一直以来对toarry()方法使用得不好、总忘记其限制。先放两种toarry()的方法:因此如果不做限制直接return arr.toArray();得到的肯定是Object类型的数组是会报错的,若用第二种方法泛型又只能是得到Integer数组,依旧会报错。r原创 2022-06-06 09:43:50 · 168 阅读 · 0 评论 -
Java多线程编程笔记
分类区分类锁、对象锁都属于对象监视器,而对象监视器是基于互斥锁的。类锁、对象锁层次: java层次类锁即锁住了类,对象锁即锁住实例对象synchronized使用场景分以下几种:一般方法对象锁,锁住当前对象静态方法类锁,锁住此类synchronized(object)锁住object,object可为对象,可为类常见:synchronized(this)对象锁synchronized(*.class)类锁锁的本质:逻辑上来说,锁其实是对象内存堆中头部的一部分数据原创 2022-05-15 15:21:38 · 165 阅读 · 0 评论 -
Java并发之Java线程池笔记
文章目录搭配视频观看优势ThreadPoolExecutor参数含义搭配视频观看视频讲解优势1、通过重用已存在的线程,降低线程创建和销毁造成的消耗2、提高系统响应速度,当有任务到达时,无需等待新线程的创建便能立即执行3、方便线程并发数的管控,线程若是无限制的创建,不仅会额外消耗大量系统资源,更是占用过多资源而阻塞系统或oom等状况,从而降低系统的稳定性。线程池能有效管控线程,统一分配、调优,提供资源使用率;4、更强大的功能,线程池提供了定时、定期以及可控线程数等功能的线程池,使用方便简单。T原创 2022-05-14 16:39:27 · 157 阅读 · 0 评论 -
JVM与数据结构中:堆与栈的区别?
首先堆栈的区别在数据结构与内存分配中是有本质区别的数据结构栈是先进后出的存储结构,实际编程时可以用数组或链表来实现。堆则是常用来实现优先队列(即优先级最高的先出),是一种特殊的完全二叉树(节点从左到右填满,最后一层的叶都在最左边,每个节点的值都小于或都大于其子节点的值。)在JVM中:栈内存:存储的是局部变量,先加载函数再进行局部变量的定义。方法先进栈,再定义变量。栈内存的更新速度很快是因为局部变量的生命周期都很短。堆内存:存储对象,new出来的对象都在堆中。这些对象(实体)用于封装实体的多原创 2022-02-27 21:13:43 · 242 阅读 · 0 评论 -
分享一个Java异常的小段程序
class MyException extends Exception { public MyException() {} public MyException(String msg) { super(msg); }}public class Demo3 { public static void main(String[] args) { try { test(); } catch (MyExce原创 2022-05-13 20:27:07 · 141 阅读 · 0 评论 -
【分享】如何修改main方法中arg的参数&利用该参数接收用户从键盘输入的字符串
package test;import java.util.Scanner;public class main{ public static void main(String [] args){ //测试类 double aver =0,sum=0, item =0; boolean computable = true; for(String s:args){ try {原创 2021-06-05 15:18:20 · 348 阅读 · 0 评论 -
定义一个 Retangle类,定义方法输出Retangle的长宽和面积。编写应用程序使用Retangle。
定义一个 Retangle类,定义方法输出Retangle的长宽和面积。编写应用程序使用Retangle。【问题描述】定义一个 Retangle类,有长、宽等属性,定义构造方法用来初始化类的这些属性,定义方法输出Retangle的长宽和面积。编写应用程序使用Retangle。【输入形式】请输入长:请输入宽:【输出形式】长是:宽是:面积是:【输入样例】Please input length: 4.0Please input width: 3.0【输出样例】The lengh is原创 2021-05-11 14:23:33 · 830 阅读 · 0 评论 -
从键盘输入10个整数,存放在一个数组中,然后使数组中的所有整数整体向后移动m个位置,最后m个数变成最前面的m个数,并输出移动后的结果。m从键盘输入。
【问题描述】从键盘输入10个整数,存放在一个数组中,然后使数组中的所有整数整体向后移动m个位置,最后m个数变成最前面的m个数,并输出移动后的结果。m从键盘输入。【输入形式】输入10个整数,每个整数间用空格分隔,回车。然后输入整数m。【输出形式】首先输出数组中的10个元素,然后输出后移m位以后的数组所有元素。【输入输出样例】Please input 10 numbers:1 2 3 4 5 6 7 8 9 10Your numbers are:1 2 3 4 5 6 7 8 9 10Pl原创 2021-04-14 20:39:08 · 4072 阅读 · 0 评论