JavaSE记录
文章平均质量分 57
JavaSE记录
随记123
一起学习叭
展开
-
09-java多线程:生命周期、释放锁操作与死锁
TIMED_WAITING:当前线程执行过程中遇到Thread类的sleep或join,Object类的wait,LockSupport类的park方法,并且在调用这些方法时,设置了时间,那么当前线程会进入TIMED_WAITING,直到时间到,或被中断。只能我们人为的进行想象和理解。WAITING:当前线程执行过程中遇到遇到Object类的wait,Thread类的join,LockSupport类的park方法,并且在调用这些方法时,没有指定时间,那么当前线程会进入WAITING状态,直到被唤醒。原创 2024-05-09 08:30:00 · 705 阅读 · 0 评论 -
09-java多线程:等待唤醒机制
等待唤醒机制这是多个线程间的一种协作机制。谈到线程我们经常想到的是线程间的竞争(race),比如去争夺锁,但这并不是故事的全部,线程间也会有协作机制。就是在一个线程满足某个条件时,就进入等待状态(wait()/wait(time)), 等待其他线程执行完他们的指定代码过后再将其唤醒(notify());或可以指定wait的时间,等时间到了自动唤醒;在有多个线程进行等待时,如果需要,可以使用 notifyAll()来唤醒所有的等待线程。wait/notify 就是线程间的一种协作机制。原创 2024-05-08 08:30:00 · 1045 阅读 · 0 评论 -
09-java多线程
我们在之前,学习的程序在没有跳转语句的前提下,都是由上至下依次执行,那现在想要设计一个程序,边打游戏边听歌,怎么设计?要解决上述问题,咱们得使用多进程或者多线程来解决.原创 2024-05-06 20:33:40 · 1238 阅读 · 0 评论 -
08-Java异常
在使用计算机语言进行项目开发的过程中,即使程序员把代码写得尽善尽美,在系统的运行过程中仍然会遇到一些问题,因为很多问题不是靠代码能够避免的,比如:客户输入数据的格式问题,读取文件是否存在,网络是否始终保持通畅等等。异常:指的是程序在执行过程中,出现的非正常的情况,如果不处理最终会导致JVM的非正常停止。异常指的并不是语法错误,语法错了,编译不通过,不会产生字节码文件,根本不能运行.异常也不是指逻辑代码错误而没有得到想要的结果,例如:求a与b的和,你写成了a-b。原创 2024-04-29 09:23:17 · 973 阅读 · 0 评论 -
07-java面向对象:内部类与注解
1、什么是内部类?将一个类A定义在另一个类B里面,里面的那个类A就称为内部类,B则称为外部类。2、为什么要声明内部类呢?总的来说,遵循高内聚低耦合的面向对象开发总原则。便于代码维护和扩展。具体来说,当一个事物的内部,还有一个部分需要一个完整的结构进行描述,而这个内部的完整的结构又只为外部事物提供服务,不在其他地方单独使用,那么整个内部的完整结构最好使用内部类。而且内部类因为在外部类的里面,因此可以直接访问外部类的私有成员。3、内部类都有哪些形式?原创 2024-04-28 10:11:35 · 927 阅读 · 0 评论 -
07-java面向对象:接口
接口就是规范,定义的是一组规则,体现了现实世界中“如果你是/要...则必须能...”的思想。继承是一个"是不是"的is-a关系,而接口实现则是 "能不能"的has-a关系。例如:你能不能用USB进行连接,或是否具备USB通信功能,就看你是否遵循USB接口规范例如:Java程序是否能够连接使用某种数据库产品,那么要看该数据库产品有没有实现Java设计的JDBC规范//只能连接鼠标//只能连接键盘//Usb3如果是类的话,有单继承限制//Usb3如果是接口的话,就不会有单继承限制。原创 2024-04-28 01:16:06 · 1202 阅读 · 0 评论 -
07-java面向对象:枚举、包装类、抽象类
枚举类型本质上也是一种类,只不过是这个类的对象是固定的几个,而不能随意让用户创建。在JDK1.5之前,需要程序员自己通过特殊的方式来定义枚举类型。在JDK1.5之后,Java支持enum关键字来快速的定义枚举类型。枚举在应用的时候直接获取创建好的对象即可,不需要在new了。原创 2024-04-23 08:30:00 · 773 阅读 · 0 评论 -
07-java面向对象:静态
/静态变量total值是2。如果权限修饰符允许,在其他类中可以通过“类名.静态变量”直接访问,也可以通过“对象.静态变量”的方式访问(但是更推荐使用类名.静态变量的方式)。静态的方法和静态的代码块中,==不允许==出现this和super关键字,如果有重名问题,使用“类名.”进行区别。静态变量的get/set方法也静态的,当局部变量与静态变量重名时,使用“类名.静态变量”进行区分。原创 2024-04-22 19:03:47 · 674 阅读 · 0 评论 -
java多态巩固
【代码】java多态巩固。原创 2024-04-22 08:40:15 · 287 阅读 · 2 评论 -
java面向对象的多态Employee
java面向对象的多态Employee(1)声明一个父类Employee员工类型,有姓名属性,私有化,提供get/set方法public double earning():代表实发工资,返回0.0public String getInfo():显示姓名和实发工资(2)声明MyDate类型有int类型的年,月,日属性,私有化,提供get/set方法提供public String getInfo(),返回“xxxx年xx月xx日”(3)声明一个子类SalaryEmployee正式工,继原创 2024-04-20 13:54:19 · 730 阅读 · 1 评论 -
java面向对象的继承Person
java面向对象的继承Person(1)声明父类:Person类* - 包含属性:姓名,年龄,性别,属性私有化,* - 包含get/set方法* - 包含getInfo()方法:例如:姓名:张三,年龄:23,性别:男(2)声明子类:Student类,继承Person类* - 新增属性:score成绩,属性私有化,* - 包含get/set方法* - 重写getInfo()方法:例如:姓名:张三,年龄:23,性别:男,成绩:89(3)声明子类:Teacher类,继承Person类* - 新原创 2024-04-20 10:50:56 · 232 阅读 · 1 评论 -
java面向对象的封装Triangle
java面向对象的封装(1)定义三角形类Triangle,* - 声明实例变量a,b,c,代表三角形三条边,全部私有化private,* - 提供每条边的get方法,* - 提供public void setBases(double a, double b, double c):要求参数a,b,c的值必须大于等于0,且满足三角形三边关系要求(即任意两边之后大于第三边),否则提示错误信息* - 声明public double area(),返回三角形面积* - 声明public double pe原创 2024-04-20 10:45:05 · 150 阅读 · 0 评论 -
java面向对象的封装Rectangle
java面向对象的继承(1)定义矩形类Rectangle,* - 声明实例变量长和宽,全部私有化private,* - 提供相应的get/set方法,如果set方法的参数值原创 2024-04-20 10:42:29 · 298 阅读 · 0 评论 -
java实例初始化
java实例初始化代码阅读题原创 2024-04-21 08:45:00 · 217 阅读 · 1 评论 -
java面向对象的继承Shape
* - Shape基类 拥有draw()和erase()两个方法 * - 基于Shape类创建Circle子类 * - 基于Shape类创建Square子类 * - 创建Shape类创建Triangle子类 * - 创建随机形状发生的类(不是子类) * - 定义公共类(测试类),创建Shape类的数组对象长度为10 * - 并为对象数组赋值其内容Circle,Square,Triangle子类对象原创 2024-04-20 10:23:25 · 203 阅读 · 0 评论 -
06-java面向对象:关键字和API
类 `java.lang.Object`是类层次结构的根类,即所有类的父类。每个类都使用 `Object` 作为超类。* Object类型的变量与除Object以外的任意引用数据类型的对象都多态引用* 所有对象(包括数组)都实现这个类的方法。* 如果一个类没有特别指定父类,那么默认则继承自Object类。 * Object:主要学习 * (1)toString() * (2)getClass() * (3)equals() * (4)hashCode() * (5)finalize()原创 2024-04-20 09:27:29 · 810 阅读 · 0 评论 -
java声明一个日期类MyDate
在测试类的main方法中,创建MyDate对象,赋值为当天日期值,调用方法。* - String monthName():根据月份值,返回对应的英语单词。* - int totalDaysOfMonth():返回这个月的总天数。* - int daysOfTheYear():返回这一天是当年的第几数。* - int totalDaysOfYear():返回这一年的总天数。* - boolean isLeapYear():判断是否是闰年。使用递归调用求某个整数的阶乘n!原创 2024-04-19 20:32:58 · 368 阅读 · 0 评论 -
06-java面向对象:多态、实例初始化
多态是继封装、继承之后,面向对象的第三大特性。它表示一个对象具有多重特征,可以在特定的情况下表现出不同的状构造器的作用:new对象,并在new对象的时候为实例变量赋值。- 静态代码块是在类被加载到JVM时执行的。它只执行一次,无论创建多少个类的实例。静态代码块通常用于初始化静态变量或执行只需要执行一次的类级别的初始化任务。- 非静态代码块是在创建类的实例时执行的。每次创建新的对象时,都会执行非静态代码块。原创 2024-04-18 20:37:41 · 1496 阅读 · 0 评论 -
java声明一个数组工具类ArrayTools
int lastIndexOf(int[] arr, int value):查找value在arr数组中最后一次出现的下标,如果不存在返回-1。int indexOf(int[] arr, int value):查找value在arr数组中第一次出现的下标,如果不存在返回-1。int max(int[] arr):求所有元素的最大值。int sum(int[] arr):求所有元素总和。原创 2024-04-16 19:04:17 · 320 阅读 · 0 评论 -
06-java面向对象:封装与继承
适当的封装可以让代码更容易理解与维护,也加强了代码的安全性。通俗的讲,把该隐藏的隐藏起来,该暴露的暴露出来。这就是封装性的设计思想。高内聚:相关的功能和数据尽可能地组织在同一个类中,各个类内部数据操作细节自己完成,以确保其独立性。低耦合:各个类之间的依赖关系应尽可能低。也就是说,一个类的变化应尽量减少对其他类的影响。有助于提高软件的可扩展性、可复用性和灵活性。继承有延续(下一代延续上一代的基因、财富)、扩展(下一代和上一代又有所不同)的意思。原创 2024-04-15 19:26:16 · 1155 阅读 · 0 评论 -
java递归调用求阶乘n!
使用递归调用求某个整数的阶乘n!原创 2024-04-15 14:05:49 · 102 阅读 · 0 评论 -
05-java面向对象(上)
类是一类具有相同特性的事物的抽象描述,是一组相关属性和行为的集合。属性:就是该事物的状态信息。行为:就是在你这个程序中,该状态信息要做什么操作,或者基于事物的状态能做什么。对象是一类事物的一个具体个体(对象并不是找个女朋友)。即对象是类的一个实例,必然具备该类事物的属性和行为。例如:做一个养宠物的小游戏类:人、猫、狗等//种类//昵称int energy;//能量//吃东西Dog dog;//喂宠物dog.eat();p.name = "张三";原创 2024-04-11 14:29:47 · 1163 阅读 · 0 评论 -
java数组冒泡排序优化
java数组冒泡排序优化原创 2024-04-10 16:58:14 · 240 阅读 · 0 评论 -
java数组冒泡排序
java数组冒泡排序原创 2024-04-10 16:57:39 · 235 阅读 · 0 评论 -
04-java数组
衣柜(装衣服等物品),教室(装学生等人员)。是将多个数据存储到一起,每个数据称为该容器的元素。内存是计算机中重要的部件之一,它是与CPU进行沟通的桥梁。其作用是用于暂时存放CPU中的运算数据,以及与硬盘等外部存储器交换的数据。只要计算机在运行中,CPU就会把需要运算的数据调到内存中进行运算,当运算完成后CPU再将结果传送出来。我们编写的程序是存放在硬盘中的,在硬盘中的程序是不会运行的,必须放进内存中才能运行,运行完毕后会清空内存。Java虚拟机要运行程序,必须要对内存进行空间的分配和管理。原创 2024-04-09 19:05:42 · 1126 阅读 · 0 评论 -
java数组二分查找
二分查找,一定是有序的原创 2024-04-09 15:47:13 · 68 阅读 · 0 评论 -
java数组顺序查找
顺序查找原创 2024-04-09 14:48:09 · 100 阅读 · 0 评论 -
java对数组进行统计
数组统计:求总和及均值、求总乘积、求统计偶数个数等原创 2024-04-09 14:41:07 · 75 阅读 · 0 评论 -
java求数组最大最小值
求最大值和最小值,并求出下标原创 2024-04-09 14:28:48 · 243 阅读 · 0 评论 -
java双层for循环
双层for循环沉浸式矩形正直角三角形倒直角三角形等腰直角三角形倒等腰直角三角形菱形平行四边形原创 2024-04-08 16:53:54 · 173 阅读 · 0 评论 -
java给出一个不多于5位的正整数(1)求出它是几位数(2)分别输出每一位数字(3)按逆序输出各位数字
给出一个不多于5位的正整数(1)求出它是几位数(2)分别输出每一位数字(3)按逆序输出各位数字原创 2024-04-08 16:48:57 · 197 阅读 · 0 评论 -
java使用while循环输出2-100的所有素数
java使用while循环输出2-100的所有素数。原创 2024-04-08 16:37:34 · 386 阅读 · 0 评论 -
java判断一个数字是否为水仙花数,请使用键盘录入
水仙花是指3位数字,表示的是每位上的数字的3次幂相加之后的和值和原数相等,则为水仙花数,1、首先需要提供一个需要判断的3位数字,因此需要一个数值。a) 将3位数字的每一位上的数字拆分下来。C) 用和值 和 原来的数字进行比较。3×3 = 153;如:153 ---> 1×1×。b) 计算每位数字的3次幂之和。D) 打印判断的比较结果即可。原创 2024-04-08 10:16:12 · 222 阅读 · 0 评论 -
java判断一个字符数据是否是数字字符
2、字符是否为数字字符: 数字字符的范围 0 - 9 之间都属于数字字符,因此提供的字符只要大于或等于字符0,并且还要下于或等于字符9即可。1、需要判断一个字符是否是数字字符,首先需要提供一个字符数据。判断一个字符数据是否是数字字符 。3、判断完成之后,打印判断的结果。原创 2024-04-08 10:15:33 · 192 阅读 · 0 评论 -
java判断一个字符数据是否是字母字符
2、字符是否为字母字符: 数字字符的范围 a - z 或者 A - Z 之间都属于字母字符,因此提供的字符只要大于或等于a,并且还要下于或等于z 或者 大于或等于A,并且还要下于或等于Z。1、需要判断一个字符是否是字母字符,首先需要提供一个字符数据。3、判断完成之后,打印判断的结果。原创 2024-04-08 10:14:11 · 193 阅读 · 0 评论 -
java判断一个5位数字是否为回文数
五位数的回文数是指最高位和最低位相等,次高位和次低位相等。如:12321 23732 56665。1、首先需要提供一个需要判断的5位数字,因此需要一个数值。b) 判断比较万位和个位 、 千位和十位是否相等。a) 将5位数字的万、千、十、个位数拆分出来。3、判断完成之后,打印判断的结果。原创 2024-04-08 10:12:10 · 175 阅读 · 0 评论 -
java使用克莱姆法则求解二元一次方程组
提示:如果ax+by=e,cx+dy=f,则 x=原创 2024-04-08 09:56:59 · 207 阅读 · 0 评论 -
java声明一个三位数,将他们逆序输出
java声明一个三位数,将他们逆序输出。原创 2024-04-08 09:54:32 · 77 阅读 · 0 评论 -
java判断今年是否是闰年
定一个一个boolean类型变量,用来保存这个年份是否是闰年的结果。定义一个int类型变量year,赋值为今年年份值。1)可以被4整除,但不可被100整除。2)可以被400整除。原创 2024-04-08 09:52:18 · 161 阅读 · 0 评论 -
java求三个整数x,y,z中的最大值
定义一个int类型变量max,先存储x与y中的最大值(使用三元运算符)再次对max赋值,让它等于上面max与z中的最大值(使用三元运算符)定义三个int类型变量,x,y,z,随意赋值整数值。原创 2024-04-08 09:50:40 · 127 阅读 · 0 评论