- 博客(23)
- 资源 (3)
- 收藏
- 关注
原创 Java多线程编程:深入理解与实践
开发者也可以通过实现类来自定义线程池的行为,包括线程的创建、任务的排队策略等。多线程编程是Java中一个强大但复杂的特性。通过理解线程的基本概念、掌握同步和通信机制、合理使用线程池,以及遵循最佳实践,开发者可以编写出高效、稳定的并发程序。随着多核处理器的普及,多线程编程的重要性日益凸显,掌握这项技能对于每一个Java开发者来说都是必不可少的。以上就是关于Java多线程编程的深入探讨。希望这篇文章能够帮助你更好地理解和应用Java的多线程特性,提升你的并发编程能力。
2024-10-17 17:21:23
2275
原创 Java 集合框架详解
Java 集合框架为程序员提供了一套预先包装的数据结构和算法,以操纵集合。它包含在 java.util 包中,是 Java 语言的核心组成部分。通过使用集合框架,我们可以轻松地处理对象的集合,而无需关心底层数据结构的实现细节。这使得代码更加简洁、易于理解和维护。
2024-10-17 17:06:22
594
原创 3.JAVA体系结构
这个版本是Java平台的核心,它提供了非常丰富的API来开发一般个人计算机上的应用程序,包括用户界面接口AWT及Swing,网络功能与国际化、图像处理能力以及输入输出支持等。JavaEE是JavaSE的扩展,增加了用于服务器开发的类库。JavaME是JavaSE的内伸,包含J2SE的一部分核心类,也有自己的扩展类,增加了适合微小装置的类库:javax.microedition.io.*等。该版本针对资源有限的电子消费产品的需求精简核心类库,并提供了模块化的架构让不同类型产品能够随时增加支持的能力。
2024-10-16 10:00:00
529
原创 5.1 java 跨平台原理
Java虚拟机是一个虚拟的计算机系统,它可以在不同的操作系统上运行,并且能解释和执行Java字节码文件。当我们用Java编写程序时,首先使用Java编译器将源代码编译成Java字节码文件(.class文件)。然后,当我们在某个操作系统上运行Java程序时,只需要在该操作系统上安装一个对应的Java虚拟机。Java虚拟机负责将Java字节码文件解释成该操作系统能理解的机器指令,并执行这些指令。由于Java虚拟机屏蔽了不同操作系统之间的差异,因此Java程序可以在安装了相应Java虚拟机的任何操作系统上运行。
2024-10-16 09:00:00
390
原创 5.java核心机制
2.Java消除了程序员回收无用内存空间的职责;在JVM的空闲时,检查并释放可被释放的存储器空间;垃圾收集的目的在除不再使用的对象,当对象建立的时候垃圾收集期,就开始监控对象的动态情况,垃圾收集主要是对内存的释放。创建对象的时候申请一个空间。4.GC的自动回收,提高了内存空间的利用效率,也提高了编程人员的效率,很大程度上减少了因为没有释放空间而导致的内存泄露。3.垃圾收集在Java程序运行过程中自动进行,程序员无法精确控制和干预;1.不再使用的内存空间应回收---》垃圾收集;3.垃圾收集器算法,优化。
2024-10-15 14:31:06
650
原创 4.JAVA的特性和优势
但是,并不是说学习了java,以后所有的东西都要用java开发了:某些领域其他语言有更出色的表现,比如,Objective C和后来的Swift在iOS设备上就有着无可取代的地位。Java是一种健壮的语言,吸收了C/C++ 语言的优点,但去掉了其影响程序健壮性的部分(如:指针、内存的申请与释放等)。比如:头文件,指针运算,结构,联合,操作符重载,虚基类等等。这是Java的核心优势。Java适合于网络/分布式环境,为了达到这个目标,在安全性方面投入了很大的精力,使Java可以很容易构建防病毒,防篡改的系统。
2024-10-15 11:16:48
611
原创 Java Web开发
此外,Java Web开发还在金融行业、企业级应用系统等领域发挥着重要作用,如银行网上银行系统、证券交易系统、CRM系统、ERP系统等,Java Web技术的高效性和可扩展性满足了复杂业务逻辑的需求。无论是电子商务、在线教育、社交网络平台,还是金融行业应用,Java Web开发以其强大的功能、安全性和可扩展性,成为众多企业构建Web应用的首选技术栈。同时,Java Web开发还注重安全性和可扩展性,通过输入验证、输出编码、加密解密等安全技术和模块化、组件化开发,确保应用的安全性和稳定性。
2024-10-14 11:11:14
757
原创 4.建造者模式
建造者模式将复杂产品的构建过程封装分解在不同的方法中,使得创建过程非常清晰,能够让我们更加精确的控制复杂产品对象的创建过程,同时它隔离了复杂产品对象的创建和使用,使得相同的创建过程能够创建不同的产品。但是如果某个产品的内部结构过于复杂,将会导致整个系统变得非常庞大,不利于控制,同时若几个产品之间存在较大的差异,则不适用建造者模式,毕竟这个世界上存在相同点大的两个产品并不是很多,所以它的使用范围有限。对于建造者模式而已,它主要是将一个复杂对象的构建与表示分离,使得同样的构建过程可以创建不同的表示。
2024-10-14 11:03:16
419
原创 2.JAVA简史
Java的历史要追溯到1991年,由Patrick Naughton 及其伙伴James Gosling (一个全能的计算机奇才)带领的Sun公同的工程师小组想要设计一种小型的计算机语言,主要用于像有线电视转换盒这类的消费设备。另外,由于不同的厂商会选择不同的中央处理器(CPU),因此这种语言的关键是不能与任何特定的体系结构捆绑在一起。另外,由于不同的厂商选择不同的CPU和操作系统,因此,要求该语言不能和特定的体系结构绑在一起,要求语言本身是中立的,也就是跨平台的。后来,改名为Oak,橡树的意思。
2024-10-14 10:50:58
875
原创 3.抽象工厂模式
所谓抽象工厂模式就是提供一个接口,用于创建相关或者依赖对象的家族,而不需要明确指定具体类。他允许客户端使用抽象的接口来创建一组相关的产品,而不需要关系实际产出的具体产品是什么。这样一来,客户就可以从具体的产品中被解耦。它的优点是隔离了具体类的生成,使得客户端不需要知道什么被创建了,而缺点就在于新增新的行为会比较麻烦,因为当添加一个新的产品对象时,需要更加需要更改接口及其下所有子类。
2024-10-12 20:00:00
202
原创 2.工厂方法模式
工厂方法模式非常符合“开闭原则”,当需要增加一个新的产品时,我们只需要增加一个具体的产品类和与之对应的具体工厂即可,无须修改原有系统。同时在工厂方法模式中用户只需要知道生产产品的具体工厂即可,无须关系产品的创建过程,甚至连具体的产品类名称都不需要知道。虽然他很好的符合了“开闭原则”,但是由于每新增一个新产品时就需要增加两个类,这样势必会导致系统的复杂度增加。作为抽象工厂模式的孪生兄弟,工厂方法模式定义了一个创建对象的接口,但由子类决定要实例化的类是哪一个,也就是说工厂方法模式让实例化推迟到子类。
2024-10-12 11:15:00
334
原创 盘点几个低代码开发平台
5.blog-vue-springboot:一个基于Spring Boot和Vue.js的个人博客系统,提供博客文章管理、评论管理等功能。2.pig:一个基于Spring Boot和Vue.js的企业级快速开发平台,提供代码生成器、表单设计器、数据可视化等功能。3.vhr:一个基于Spring Boot和Vue.js的人力资源管理系统,提供员工信息管理、薪资管理、考勤管理等功能。4.mall:一个基于Spring Boot和Vue.js的电商平台,提供商品展示、购物车、订单管理等功能。
2024-10-10 15:21:52
430
原创 戏说防火墙
若需为某服务敞开大门,譬如那http服务,需通行于2100之端口,只需轻描淡写地输入“firewall-cmd --zone=public --add-port=2100/tcp --permanent”,防火墙便心领神会,为2100端口大开绿灯。更甚者,若想让防火墙永无再现之日,只需轻挥手指,键入“systemctl disable firewalld.service”,防火墙便再也无法随系统重启而复苏,彻底从生活中消失。先探其状,再撤其防,终禁其启,三步并作一步,防火墙便再难现身。
2024-10-10 14:49:06
399
原创 二进制常识
为什么计算机用二进制cpu只能通过低电频(0)和高电频(1)进行读取和记录,所以计算机就用0 1作为自己的语言,对事件万物进行描述。常识1.常见的二进制单位bit:(b) 最基本单位 可以表示0 或者1byte:(B) 字节,等于8bit,可以表示8位二进制数。据说淡出cpu设计出来只有8个针脚,所以现在就用自己作为存储单位kb: 1kb=1024bytemb:1mb=1024kbgb:1gb=1024mbtb:1tb=1024gb2.二进制表示数字就是二进制不同位置
2021-05-19 20:18:48
3692
原创 mysql 忘记root 密码 解决方法
1、首先net stop mysql服务,并且切换到任务管理器,有与mysql有关的,最好关闭进程。2、运行CMD命令切换到MySql安装bin目录3.执行mysqld --skip-grant-tables(注意后面没有分号;)4.此命令行窗口不要关闭,再重新打开一个新的命令行窗口。注意,这时有时会出现一个警告,不要理会即可。5.再次打开一个cmd新窗口。按上面方法运行至bin目...
2018-07-31 10:54:36
176
原创 window 同时启动多个tomcat
原理:一个tomcat不能同时启动两个,是因为两次启动的都是同一个端口的tomcat,相当于把一个应用启动了两遍。window是根据应用的端口号区分应用的,所以,两个tomcat设置为不同的端口号即可。1.解压两次tomcat到两个目录,分别为d:/tomcat7-1和d:/tomcat7-22.配置环境变量CATALINA_HOME1=d:/tomcat7-1和CATALINA_HOME2=d:...
2018-05-07 09:28:30
1352
java学习笔记javase,集合,线程,网络变成等
2024-10-17
H5跑酷小游戏-按空格键跳跃, H5小游戏,浏览器打开直接玩,包含源码
2024-10-15
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅