Java开发工具包(JavaDevelopmentKit,简称JDK)是Oracle公司提供的用于开发和运行Java应用程序的软件包。
在这个特定的版本“jdk-11.0.18win-64”中,我们关注的是Java11的一个更新,版本号为11.0.18,且该版本是针对Windows64位操作系统的。
这个压缩包包含了一个可执行文件“jdk-11.0.18_windows-x64_bin.exe”,这通常是JDK安装程序,用于在Windows64位系统上安装Java开发环境。
Java11是一个长期支持(Long-TermSupport,LTS)版本,意味着它将得到Oracle更长时间的技术支持和安全更新,对于企业和开发团队来说尤其重要,因为它提供了稳定性和安全性保障。
Java11在2018年9月发布,引入了许多新特性、改进和优化。
1.**模块化系统(ProjectJigsaw)**:Java9引入了模块化系统,但Java11进一步完善了这一特性。
模块化有助于改善代码的组织,提高性能,减少内存占用,并且使大型应用的构建和部署更加容易。
2.**HTTP客户端API(Java.net.http)**:Java11添加了内置的HTTP客户端API,使得开发者可以直接在Java代码中处理HTTP和HTTPS请求,而无需依赖第三方库。
3.**本地变量类型推断(var关键字)**:Java11引入了`var`关键字,允许局部变量声明时省略类型,由编译器根据初始值自动推断。
4.**动态CDS(ClassDataSharing)**:这是一个性能优化功能,允许在JVM启动时共享已加载类的数据,减少启动时间和内存消耗。
5.**改进的字符串处理**:包括新的`String#lines()`方法,用于获取字符串的所有行,以及`String#strip()`和`String#stripIndent()`,用于去除字符串两端的空白字符和缩进。
6.**ZGC(ZGarbageCollector)**:这是一种低延迟的垃圾收集器,适合大内存应用,其目标是在大部分情况下保持10毫秒以下的暂停时间。
7.**JLink**:这是一个命令行工具,用于构建自定义的Java运行时环境,只包含应用所需的模块,从而减小程序的大小。
8.**JEP325:FlightRecorder**:提供了一种标准接口来记录JVM内部事件,如性能数据,这对于诊断和分析性能问题非常有用。
9.**JEP326:JavaMissionControl**:这是一个强大的Java应用性能监控和诊断工具,现在成为JDK的一部分。
10.**其他小改进**:包括对JShell(JavaREPL)、Javadoc和JAR文件格式的增强,以及对SSL/TLS协议的支持更新等。
安装“jdk-11.0.18_windows-x64_bin.exe”后,开发者可以利用Java11的新特性和性能提升进行软件开发,包括编写桌面应用、Web应用、移动应用以及大数据处理和云计算服务。
此外,JDK还包括JRE(JavaRuntimeEnvironment),使得用户可以运行Java应用程序。
开发者还可以使用JDK中的编译器(javac)、调试器(jdb)和其他工具进行开发工作。
2025/9/7 0:18:01 139.69MB java
1
JAVA管程解决哲学家就餐问题流程图截图运行结果JAVA代码很好的东西
2025/8/22 5:35:58 238KB 哲学家就餐问题 管程 JAVA
1
http://blog.csdn.net/xiaoxiao108/archive/2010/12/18/6084473.aspx记得在大学学java时,同学在下载了很多java的视频,看到里面有些是介绍简单游戏开发的,马士兵老师讲的,挺感兴趣的。
一起看了看视频写了写程序。
现在毕业了,因为工作中用的是C#,最近很想拿C#把以前写的坦克大战重写下,来熟悉熟悉C#的基本语法。
程序很简单,跟java代码相比没有多大改动开发环境vs2008实现方法如下1.在form中添加一个panel,在panel的Paint方法中得到Graphics对象2.通过Graphics对象再panel画出坦克,子弹等相关内容3.添加timer控件来控制panel的重画实现坦克,子弹的运动4.根据电脑按下的方向键,确定出坦克的方向,panel重画时根据坦克的方向修改坦克的X,Y轴坐标,来实现坦克的移动5.通过Rectangle的IntersectsWith函数来进行碰撞检测,实现子弹打击坦克具体实现代码1.在项目里面添加枚举类型//////表示方向的的枚举类型///publicenumDirection{L,U,D,R,STOP}2.添加子弹类的相关常量,属性//////子弹X轴的速度,单位PX///publicstaticintXSPEED=10;//////子弹Y轴的速度,单位PX///publicstaticintYSPEED=10;//////子弹的宽度///publicstaticintWIDTH=10;//////子弹的高度///publicstaticintHEIGHT=10;//////子弹的坐标///intx,y;//////子弹的方向///Directiondir;//////子弹的存活状态///privateboollive=true;//////TankClient窗体实例///privateTankClienttankClient;//////敌我双方的标记///privateboolgood;3.添加draw方法来画出子弹publicvoidDraw(Graphicsg){if(!live){tankClient.missiles.Remove(this);return;}//通过画椭圆函数在界面上显示子弹g.FillEllipse(Brushes.Black,x,y,Missile.WIDTH,Missile.HEIGHT);Move();}4.添加子弹打击坦克的方法publicboolHitTank(Tankt){//用IntersectsWith来检测两个矩形相碰撞if(GetRectangle().IntersectsWith((t.GetRectangle()))&&t.Live&&t
2025/8/19 18:41:23 73KB C# 坦克大战 双缓冲 碰撞检测
1
简单的java代码,复制到项目就可以了,我只用了黑白滤镜效果
2025/8/19 7:20:13 13KB camera2 opengl 滤镜 录制视频
1
达内学子商城项目java码源,包括java代码、前端静态页面、数据库资源
2025/8/7 1:26:20 34.49MB 学子商城
1
*1.创建URLClassLoader类加载器*2.获取当前执行的classpath的所有jar包的路径*3.通过java的ToolProvider创建JavaCompile,用来执行class源文件*4.创建DiagnosticCollector用来执行获取执行失败的错误结果*5.添加动态执行的编译环境options是个集合,添加内容,字符集,classpath等*6.传入JavaFileObject的java文件,是个集合,创建JavaSourceObject实现这个接口,Kind.SOURCE.extension='.java'*7.创建任务并执行*8.获取执行完成后的返回JavaClassObject类*9.创建DynamicClassLoader来加载类,defineClass这个方法
2025/8/4 9:10:44 15KB javaCompile 动态编译
1
一.功能简介1.实现一个图书管理系统。
图书信息存放到一个数据库中。
图书包含信息:图书号、图书名、作者、价格、备注字段。
2.系统实现如下的基本管理功能:(1)用户分为两类:系统管理员,一般用户。
(2)提供用户注册和用户登录验证功能;
其中登录用户的信息有:登录用户名,登录密码等。
(3)管理员可以实现对注册用户的管理(删除),并实现对图书的创建、查询、修改和删除等有关的操作。
(4)一般用户,只能查询图书,并进行借书、还书操作,每个用户最多借阅8本,即当目前借书已经是8本,则不能再借书了,只有还书后,才可以再借阅。
二.涉及技术Struts2框架、MySQL数据库、C3P0数据池、Jsp、HTML、CSS、JavaScript等技术。
三.设计思路1.基于Struts2框架进行编程设计,连接MySQL数据库实现数据的增删查改,应用Jsp、HTML、CSS、JavaScript对访问页面进行编写和美化。
2.分别创建book表和user表,用以存放图书信息和用户数据。
其中user表中,设有flag以区分管理员和普通用户。
3.分别创建Book类和User类,与数据表相对应。
每本书和每个用户都有唯一的id与之对应。
4.创建C3P0属性文件和数据库连接工具类。
5.设计数据库操作类:UserDao类和BookDao类。
UserDao用于实现所有对user表的操作,BookDao用于实现所有对book表的操作。
6.创建分别对应UserDao类和BookDao类的Action:UserAction和BookAction。
采用基于注解的方式进行Action配置。
7.用户账号分为管理员账号和普通用户账号,注册时加以区分,登录时即可自动判断进入对应的操作主页面。
8.管理员可实现对用户的查询显示,模糊查询,删除,批量删除,全选和取消全选等功能;
可实现对图书的查询显示,模糊查询,添加,删除,批量删除,全选和取消全选等功能。
9.普通用户可实现借书和还书功能,借书功能通过对book表的查询,将未借出的图书按照id顺序排列显示,点击表格后方的“借阅”按钮,进行确认借阅,将book表中本书的borrowperson列的值改为本用户账号。
对于借阅成功的图书可以在“当前借阅”中进行查看。
还书功能通过在“当前借阅”中点击“还书”按钮,进行确认还书,将book表中本书的borrowperson列的值改为“空”,本书信息将可以在“借书”界面查看。
四.存在的问题1.原本希望能为每一个用户创建一个对应的以其账号命名的数据表,用以存放用户所借图书信息,但创建表的SQL语句无法在java代码中执行,所以只好在book表中添加一列borrowperson,用来存放借阅本书的用户账号,这样查询用户当前借阅记录时,以“whereborrowperson=‘account’”为条件对book表进行查询即可。
但是每个用户要当前查询借阅记录时都需要对整个book表进行遍历,效率太低。
2.模糊查询时,因同时需要进行where筛选,SQL语句无法执行,只好分开查询,先进行模糊查询,查询结果存放到list表中,再通过遍历list表进行判断是否符合where的条件,若符合,则存入另一个list表中。
这种方法虽然实现了查询,但效率太低,代码过于繁重。
五.改进预想这些本不应该是预想,原本希望在本次作业中实现的,但时间不够充分,只能作为下一步的改建预想。
1.希望实现登录时验证码验证登录;
2.希望实现查询时,查询结果分页浏览;
3.进一步优化Action之间的传值方法;
4.页面进一步优化、美化;
5.实现用户借书还书时间记录,和借阅时长限制。
2025/7/20 9:38:38 13.98MB Struts2
1
实现图片的压缩1.按照固定的比例缩放图片2.以宽度为基准等比例放缩图片3.以高度为基准,等比例缩放图片4.按照最大高度限制,生成最大的等比例缩略图
2025/7/8 21:53:18 5KB 图片压缩
1
课程设计版本《标准化考试系统》,java代码
2025/7/7 5:44:16 285KB 考试系统
1
RPN计算器ProgramInputEachlineoftheinputfile(prob12.in)containsaseriesofnumbersandoperators.TheprogrammustevaluatetheselinesasRPNexpressions.Alltokensareseparatedbyoneormorespaces.Numbersmaybenegative.Validoperatorsare+(addition),-(subtraction),*(multiplication)and/(division).ThelastlineofthefilecontainsonlythewordEND:1637+*432.12513–*20+5–3*42/631–/++ENDProgramOutputTheprogramwillprintthecomputedresultofeachRPNexpressiononaseparateline.16096.5-10
2025/7/5 3:21:37 2KB 计算器
1
共 279 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡