
Javase
文章平均质量分 53
小手WA凉
一名zzuli在校生
展开
-
复习JUC的总结笔记
调用Thread的start方法会调用start0,start0会调用该Thread类的run方法。Thread类如果传入了Runnable,run方法里会调用Runnable的run方法,如果没有传入,则什么也不会做。也可以通过重写Thread的run方法,让start0调用重写的run方法。start 方法只是让线程进入就绪,里面代码不一定立刻运行(CPU 的时间片还没分给它)。每个线程对象的start方法只能调用一次,如果调用了多次会出现IllegalThreadStateException。原创 2025-04-19 17:05:42 · 832 阅读 · 0 评论 -
Java线程池原理分析
从这也能看出,核心线程和非核心线程本身没有任何区别,某一个线程getTask获取任务时,获取不到任务也就释放了,线程池也不知道释放的是核心线程还是非核心线程,谁被释放掉了,谁就是非核心线程。其余线程(再说非核心线程都不太合适了,应该说其余线程)没有任务也不会释放原因:当前线程数wc已经不大于corePoolSize了执行的是BlockingQueue的take阻塞获取方法,该方法获取不到会一直卡着,直到获取到任务。原创 2025-01-13 19:00:11 · 980 阅读 · 0 评论 -
总结java中关于继承中的成员属性和成员方法的多态细节
左右就是构造对象时等号两边((Animal animal=new Dog();))的Animal、Dog,这个时候再编译阶段就会报错:无法解析符号 'eat'(因为编译阶段看的是左边,左边父类中没有eat方法)那如果左边父类中有eat 方法,而右边子类中没有eat,在执行时会怎么样?这时idea就会报出这样的错误: 无法解析符号 'age'问题背景:下面的代码会输出什么?原创 2023-02-02 16:26:52 · 186 阅读 · 0 评论 -
【Java】初学instanceof
这样以来在类型转换时,例如:Cat cat=(Cat)animal;如果直接转换就会出现类型转换异常(运行时报错,编译时没有),这时就可以用instanceof判断一下:if(animal instanceof Cat) Cat cat=(Cat)animal;以上在编译阶段都没有报错, 但如果判读与之毫无相关的类例如animal instanceof Computer在编译时就会报错。原创 2023-02-04 13:44:12 · 102 阅读 · 0 评论 -
初学Java小细节自总
如果子类的构造方法中没有显示地调用父类的构造方法,那么Java编译器会自动在子类的构造方法中插入一条默认的语句,来调用父类的无参构造方法。因此,如果父类没有提供无参构造方法,而子类的构造方法中又没有显式地调用父类的其他构造方法,那么编译就会失败。 如果子类的构造方法中显式地调用了父类的其他构造方法,那么编译器就不会再自动插入语句了。此时,调用父类的构造方法必须放在子类构造方法的第一行,并且必须使用语句来调用。原创 2023-03-21 22:21:09 · 93 阅读 · 1 评论 -
如何配置Java的环境变量
再点新建,名称为:%JAVA_HOME%\bin。4.最后一步步点确定即可。原创 2023-04-09 23:09:21 · 1569 阅读 · 0 评论 -
Java中的求值策略(值传递)和C++中的引用传递、地址传递又有什么不同?
当你将一个基本数据类型(如int、float、char等)作为参数传递给方法时,实际上是将该变量的值拷贝传递给方法内部。这意味着在方法内部对参数的修改不会影响到原始变量。................如果是C++中的地址传递,那在本例中输出结果将为2。node1就指向了链表中第二个结点。(注意理解和体会引用传递,地址传递的含义和区别)原创 2023-10-06 20:49:50 · 380 阅读 · 0 评论 -
Java中Lambda 表达式改写规则
Lamada表达式的目标类型必须是函数式接口,不能是抽象类。省略规则:原创 2023-10-06 20:54:01 · 129 阅读 · 0 评论 -
在Java中,二维数组在内存空间是一个的连续地址空间吗
二维数组实际上是一个包含其他数组的数组,每一行在内存地址上连续的,而每行的内存地址。例如:以下代码将创建一个3x4的二维数组。,它们通常存储在连续的内存地址空间中。原创 2023-10-25 21:28:25 · 829 阅读 · 0 评论