
java
文章平均质量分 76
hdxx2022
这个作者很懒,什么都没留下…
展开
-
关于jQuery css() 方法
css() 方法设置或返回被选元素的一个或多个样式属性。原创 2024-04-29 23:37:50 · 271 阅读 · 0 评论 -
Java 基本数据类型
变量就是申请内存来存储值。也就是说,当创建变量的时候,需要在内存中申请空间。内存管理系统根据变量的类型为变量分配存储空间,分配的空间只能用来储存该类型数据。因此,通过定义不同类型的变量,可以在内存中储存整数、小数或者字符。原创 2024-04-26 22:07:56 · 641 阅读 · 0 评论 -
Java 基本数据类型浅谈
变量就是申请内存来存储值。也就是说,当创建变量的时候,需要在内存中申请空间。内存管理系统根据变量的类型为变量分配存储空间,分配的空间只能用来储存该类型数据。因此,通过定义不同类型的变量,可以在内存中储存整数、小数或者字符。原创 2024-04-17 20:17:36 · 543 阅读 · 0 评论 -
java jvm字节占用空间
最后一行padding 5bytes的目的是,规则一中描述每个对象按照8个字节的粒度对齐,这样下一个分配的对象的开始位置必须在8的倍数上,而离27最近的8的倍数是32,因此加了5bytes。第一次padding2是因为属性c分配内存后,不满足父类最后一个属性和子类第一个属性按4字节粒度对齐(18除4除不开),因此需要添加两个字节使其可以按4字节粒度对齐。规则三:对于继承时,要按照规则二先计算父类的类属性占用情况,再按照规则二计算子类的类属性占用情况,不能将父类和子类的属性混合在一起按规则二分配。原创 2024-04-05 17:07:28 · 734 阅读 · 0 评论 -
java jvm字节占用空间
最后一行padding 5bytes的目的是,规则一中描述每个对象按照8个字节的粒度对齐,这样下一个分配的对象的开始位置必须在8的倍数上,而离27最近的8的倍数是32,因此加了5bytes。第一次padding2是因为属性c分配内存后,不满足父类最后一个属性和子类第一个属性按4字节粒度对齐(18除4除不开),因此需要添加两个字节使其可以按4字节粒度对齐。规则三:对于继承时,要按照规则二先计算父类的类属性占用情况,再按照规则二计算子类的类属性占用情况,不能将父类和子类的属性混合在一起按规则二分配。原创 2024-03-26 13:02:38 · 882 阅读 · 0 评论 -
java jvm字节占用空间
在jvm中每个对象(数组除外)都有一个头,这个头有两个字,第一个字存储的时对象的一些标志位信息,例如:锁标志位、经历了几次gc等信息,第二个字是一个引用,指向了这个类的类信息。最后一行padding 5bytes的目的是,规则一中描述每个对象按照8个字节的粒度对齐,这样下一个分配的对象的开始位置必须在8的倍数上,而离27最近的8的倍数是32,因此加了5bytes。规则三:对于继承时,要按照规则二先计算父类的类属性占用情况,再按照规则二计算子类的类属性占用情况,不能将父类和子类的属性混合在一起按规则二分配。原创 2024-03-14 16:39:12 · 833 阅读 · 0 评论 -
java jvm字节占用空间浅谈
最后一行padding 5bytes的目的是,规则一中描述每个对象按照8个字节的粒度对齐,这样下一个分配的对象的开始位置必须在8的倍数上,而离27最近的8的倍数是32,因此加了5bytes。第一次padding2是因为属性c分配内存后,不满足父类最后一个属性和子类第一个属性按4字节粒度对齐(18除4除不开),因此需要添加两个字节使其可以按4字节粒度对齐。规则三:对于继承时,要按照规则二先计算父类的类属性占用情况,再按照规则二计算子类的类属性占用情况,不能将父类和子类的属性混合在一起按规则二分配。原创 2024-03-12 22:06:17 · 854 阅读 · 0 评论 -
java jvm字节占用空间浅谈
最后一行padding 5bytes的目的是,规则一中描述每个对象按照8个字节的粒度对齐,这样下一个分配的对象的开始位置必须在8的倍数上,而离27最近的8的倍数是32,因此加了5bytes。第一次padding2是因为属性c分配内存后,不满足父类最后一个属性和子类第一个属性按4字节粒度对齐(18除4除不开),因此需要添加两个字节使其可以按4字节粒度对齐。规则三:对于继承时,要按照规则二先计算父类的类属性占用情况,再按照规则二计算子类的类属性占用情况,不能将父类和子类的属性混合在一起按规则二分配。原创 2024-03-09 21:16:22 · 853 阅读 · 0 评论 -
java switch case多个条件实现代码
注意,在switch case中使用多个条件时,case标签的值必须是同一数据类型,并且不能重复。同时,每个case标签后必须以break语句或default语句结束。在上面的代码中,如果num的值为2或3,则会执行相同的代码块。可以看到,case 2和case 3的语句块是在同一个位置使用逗号分隔的。Java中的switch case语句允许多个条件,可以通过在case标签中使用逗号分隔多个值实现。原创 2023-08-31 15:01:42 · 11855 阅读 · 0 评论 -
关于JAVA与C++的区别介绍
可怕”的goto语句是c和c++的“遗物”,它是该语言技术上的合法部分,引用goto语句引起了程序结构的混乱,不易理解,goto语句子要用于无条 件转移子程序和多结构分支技术。c十十增加了类,提供了类算法,该算法是与类相连的函数,c十十类方法与Java类方法十分相似,然而,由于c十十仍然支持c,所以不能阻止c十十开发人员使用函数,结果函数和方法混合使用使得程序比较混乱。操作符重载被认为是c十十的突出特征,在Java中虽然类大体上可以实现这样的功能,但操作符重载的方便性仍然丢失了不少。原创 2023-08-30 18:10:48 · 105 阅读 · 0 评论 -
java的用法浅谈
数据库开发:Java与数据库之间的交互可以使用JDBC(Java Database Connectivity)进行,也可以使用Hibernate、Spring Data等框架进行ORM(对象关系映射)开发。Web应用程序开发:使用Java EE(Enterprise Edition)进行Web应用程序开发,包括 Servlet、JSP、JavaServer Faces(JSF)等。总之,Java是一种功能强大、可靠性高、易于扩展、跨平台的编程语言,具有广泛的应用场景和用法。原创 2023-08-31 16:57:10 · 117 阅读 · 0 评论 -
关于XML 的用途介绍
这使得 XML 在不损失数据的情况下,更容易扩展或升级到新的操作系统、新应用程序或新的浏览器。未来也许会出现某种字处理软件、电子表格程序以及数据库,它们可以使用纯文本格式读取彼此的数据,而不需要使用任何的转换程序。通过 XML,您的数据可供各种阅读设备使用(手持的计算机、语音设备、新闻阅读器等),还可以供盲人或其他残障人士使用。不同的应用程序都能够访问您的数据,不仅仅在 HTML 页中,也可以从 XML 数据源中进行访问。由于 XML 独立于硬件、软件以及应用程序,XML 使您的数据更可用,也更有用。原创 2023-08-30 14:34:30 · 244 阅读 · 0 评论 -
Android View的三种移动方式浅谈
要使View在规定的时间中移动到指定的位置,我们会调用startScroll()方法,startScroll()是Scroller类中的方法,另外Scroller类中还有一个filing()方法也是很常用的,它主要是处理平滑的移动,一般营造滑动之后的惯性效果,使得View的移动更逼真。原创 2023-08-30 13:27:38 · 535 阅读 · 0 评论 -
线程池入门 线程池的解析
我们可以看到corePoolSize核心线程池为0,代表该线程没有核心线程池,意味着线程都是可被回收销毁的,线程池中有时会是空的。我们可以看到该线程池的corePoolSize核心线程数量和maximumPoolSize最大线程数量都是1,代表该线程有且只有一个固定的线程,既然是单线程,所以该线程池实现的是串行操作,没有并发效果。,这是一个链表阻塞队列。corePoolSize:核心线程数量,常驻在线程池中的线程,即使它们是空闲的,也不会销毁,除非设置allowCoreThreadTimeOut的值。原创 2023-08-29 18:26:46 · 67 阅读 · 0 评论 -
java怎么调用另一个类的方法代码
在上面的例子中,MyClass类创建了AnotherClass类的一个对象,并调用它的sayHello()方法。输出结果将会是 "Hello world!要调用另一个类,需要在当前类中创建该类的对象。原创 2023-08-29 09:36:28 · 896 阅读 · 0 评论 -
关于Rust中函数与闭包的使用介绍
本文主要介绍一下Rust函数相关的内容,首先函数我们其实一直都在用,所以函数本身没什么可说的,我们的重点是与函数相关的闭包、高阶函数、发散函数,感兴趣的可以学习一下。原创 2023-08-19 18:00:56 · 171 阅读 · 0 评论 -
批处理复制文件时保留原目录结构的几种方法
本文主要介绍了批处理复制文件时保留原目录结构的几种方法,需要的朋友可以参考下假设待复制的文件名为 7-zip.chm 位于 C:\Program Files 目录下的某一级子文件夹下面,但是不知道具体在哪一个子文件夹或哪一级子文件夹下。需要把它复制到 E 盘相同的目录结构下面,以便将来需要恢复的时候可以快速找到正确的位置。原创 2023-08-18 12:06:11 · 769 阅读 · 0 评论 -
关于python 队列类及其方法介绍
以上为个人经验,希望能给大家一个参考,也希望对大家有所帮助!原创 2023-08-17 15:43:35 · 155 阅读 · 0 评论 -
关于python线程间通信之队列浅谈
本篇文章介绍了为什么需要线程间通信,以及通信方式有哪些,最后每种通信方式都举了一个例子,最常用的还是共享变量的方式来进行线程间通信。感兴趣的朋友可以阅读本文。原创 2023-08-17 19:46:54 · 178 阅读 · 0 评论 -
JAVA中构造方法私有化的作用是什么
如果我们想在Person类的外部使用Person类的对象,只能在person类的内部实例化一个Person类的对象,然后调用这个对象,而不能再外部实例化新的对象。//Person类唯一的实例化对象。外部的Person类的所有对象只能是对Person内部newperson对象的引用。Private Person(string name){ //私有的构造方法。Private Person(string name){ //私有的构造方法。我们不能在外部实例化这个Person对象的类!原创 2023-08-09 16:05:38 · 211 阅读 · 0 评论 -
关于Java transient关键字原理浅谈
序列化是对象进行持久化处理,也就是说,将对象转化成一个字节流进行存储(比如存储为一个字节文件)或传输(通过网络传输字节)。但是有时候,一些变量可能不需要序列化,因为没必要对这些变量进行序列化。如果一个变量被申明为 transient,那么这个变量就不会被序列化。本文主要介绍了Java transient关键字原理解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下。Java 中的 transient 关键字被用来表示变量将不被序列化处理。原创 2023-08-01 18:38:20 · 119 阅读 · 0 评论 -
JAVA 十六进制与字符串的转换浅谈
笔者前几日在开服过程中需要将字符串转化成为16进制的字符串,在网上找到了一些方法尝试之后,均发现存在一个问题-->字符串转为16进制后再转回来,英文正常,中文出现乱码。笔者前几日在开服过程中需要将字符串转化成为16进制的字符串,在网上找到了一些方法尝试之后,均发现存在一个问题-->字符串转为16进制后再转回来,英文正常,中文出现乱码。1)在将字符串转为16进制之前先进行一次转化,先将其转化成为Unicode编码(相当于把中文用英文字符代替),在转化成为16进制。*字符串转为16进制。*16进制转为字符串。原创 2023-08-01 10:35:32 · 5777 阅读 · 1 评论 -
关于Java中的泛型浅谈
打个比方,不用泛型的实现方式,相当于一个袋子,里面可以装任意类型的黑盒子,你什么都可以往里放,但是你可能不知道你下一个取出来的是什么东西,而泛型的实现方式,相当于一个贴了标签的黑盒子,标签上可以写任何信息,如写上水果,那么这个盒子就只能装水果,你也会知道每次取出来的肯定是水果而不是其它东西,同理类似如写上杂粮,那么这个袋子就只能用来装杂粮,但其实上都是同一种袋子,并不是为每一种类型的东西准备一种袋子。泛型的好处是在编译的时候检查类型安全,并且所有的强制转换都是自动和隐式的,提高代码的重用率。原创 2023-08-02 13:48:59 · 179 阅读 · 0 评论 -
JVM工作原理和工作流程浅谈
因为类的加载必须是一次性不可重复的,试想一下,如果基础类库中的类可以重复加另一个类来替换原来的类,那是多么严重的安全隐患,为了避免这一点,基础类库都是由C++编写的启动加载器来加载,但是为了兼顾扩展性,所以除了基础类库,其他的类都可以通过用户加载器来加载,那么为了避免但不强制要求避免重复加载的情况发生,java规范就采取并建议我们按照父类委托的方式实现类加载器。这里说的常量池是运行时的,通常是字节码中的类的版本、描述,以及常量池表,这个表是一种符号表,在运行的时候将这些符号的引用变为直接符号。原创 2023-08-01 09:48:46 · 62 阅读 · 0 评论 -
java正则表达式之Pattern与Matcher类浅谈
本文主要给大家介绍了关于java正则表达式之Pattern与Matcher类的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。比如:表达式就是“t.n”,它匹配“tan”、“ten”、“tin”和“ton”,还匹配“t#n”、“tpn”甚至“t n”。例如,'zo+' 能匹配 "zo" 以及 "zoo",但不能匹配 "z"。" 可以匹配 "do" 或 "does"。例如,zo* 能匹配 "z" 以及 "zoo"。原创 2023-07-29 12:36:27 · 315 阅读 · 0 评论 -
JAVA正则表达式 Pattern和Matcher
一个正则表达式,也就是一串有特定意义的字符,必须首先要编译成为一个Pattern类的实例,这个Pattern对象将会使用matcher()方法来生成一个Matcher实例,接着便可以使用该 Matcher实例以编译的正则表达式为基础对目标字符串进行匹配工作,多个Matcher是可以共用一个Pattern对象的。首先一个Pattern实例订制了一个所用语法与PERL的类似的正则表达式经编译后的模式,然后一个Matcher实例在这个给定的Pattern实例的模式控制下进行字符串的匹配工作。原创 2023-07-29 12:01:07 · 193 阅读 · 0 评论 -
C++类对象共享数据的实现方法
若以类外的全局变量来存放,不能实现数据的隐藏,若在类中增加一个数据成员用以存放人数,必然在每一个对象中都存储一副本,这样不仅冗余,而且每个对象分别维护一个“人数”,势必造成数据的不一致性。属性,把共享只限制在类的范围之内,这样对类外来说,类的数据成员仍是隐藏的,达到了共享与隐藏两全,解决了全局变量和局部变量所无法克服的矛盾。原创 2023-07-23 13:07:12 · 763 阅读 · 0 评论 -
java语言:多态、重载、构造函数、析构函数
也就是说,用户对应的接口都是一个Parent。而由于new后面的子类不同,而产生调用同一个方法method返回不同结果的显现叫多态。就是同一个方法在使用不同子类时有不同的表现(在这里是不同的返回值)。在建立这些子类实例时,都用父类或接口做为变量类型,如上例中的parent。在使用完对象之后用来销毁,同时释放空间,隐式调用命名方法是构造函数前加一个波浪线。所谓的不同实现,是指参数的个数或类型的不同,返回类型可同也可不同。重载是同一个方法名(包括构造函数)的多种不同实现。3:父类引用指向字类对象。原创 2023-03-23 14:59:46 · 120 阅读 · 0 评论 -
java jvm字节占用空间
最后一行padding 5bytes的目的是,规则一中描述每个对象按照8个字节的粒度对齐,这样下一个分配的对象的开始位置必须在8的倍数上,而离27最近的8的倍数是32,因此加了5bytes。第一次padding2是因为属性c分配内存后,不满足父类最后一个属性和子类第一个属性按4字节粒度对齐(18除4除不开),因此需要添加两个字节使其可以按4字节粒度对齐。规则三:对于继承时,要按照规则二先计算父类的类属性占用情况,再按照规则二计算子类的类属性占用情况,不能将父类和子类的属性混合在一起按规则二分配。原创 2023-03-19 20:43:52 · 84 阅读 · 0 评论 -
Java性能优化: 反射调用利器
FieldAccess 只能访问 public protected package 访问权限的字段。如果访问 private 权限的 id 字段,将会抛出异常。它还可以通过字节码访问基本字段,以避免装箱。关于字节码ASM,将在第10章介绍,也会有一个具体的使用ASM代码生成例子。本文介绍一个非常小的库,ReflectASM,通过使用。为了更好的性能, 推荐使用方法名对应的方法下标来访问。为了更好的性能, 推荐使用字段名对应的字段下标来访问。如果想访问私有字段,可以使用反射功能先放开权限。原创 2023-03-19 13:38:24 · 152 阅读 · 0 评论 -
Java性能优化技巧
但是,对于负担较重的网站来说,这里存在另外一个问题:虽然为客户保留打开的连接有一定的好处,但它同样影响了性能,因为在处理暂停期间,本来可以释放的资源仍旧被占用。在大规模系统中,串行化会话的代价是很昂贵的。但时,只有当被引用的内容频繁地改变时,或者在对主页面的请求没有出现之前,被引用的页面无法确定时,使用include动作才合算。另外,也可以用编程的方式调用会话的setMaxInactiveInterval()方法,该方法用来设定在作废会话之前,Servlet容器允许的客户请求的最大间隔时间,以秒计。原创 2023-03-18 22:20:40 · 189 阅读 · 0 评论 -
Java线程池的概念、创建与执行浅谈
会的,newFixedThreadPool使用了无界的阻塞队列LinkedBlockingQueue,如果线程获取一个任务后,任务的执行时间比较长(比如,上面demo设置了10秒),会导致队列的任务越积越多,导致机器内存使用不停飙升,在使用线程池处理任务的时候,任务代码可能抛出RuntimeException,抛出异常后,线程池可能捕获它,也可能创建一个新的线程来代替异常的线程,我们可能无法感知任务出现了异常,因此我们需要考虑线程池异常情况。根据指定的执行时间从小到大排序,否则根据插入到队列的先后排序。原创 2023-03-16 13:10:23 · 185 阅读 · 0 评论 -
关于Java与C的相互调用与操作
Java和Jni的类型对照表。一.Java调用C函数。二.C调用Java方法。然后在cpp文件中加入。原创 2023-03-16 14:48:01 · 462 阅读 · 0 评论 -
java入门:多态、重载、构造函数
是说,用户对应的接口都是一个Parent。而由于new后面的子类不同,而产生调用同一个方法method返回不同结果范文大全全的显现叫多态。在建立这些子类实例时,都用父类或接口做为变量类型,如上例中的parent。在使用完对象之后用来销毁,同时释放空间,隐式调用命名方法是构造函数前加一个波浪线。是同一个方法在使用不同子类时有不同的表现(在这里是不同的返回值)。所谓的不同实现,是指参数的个数或类型的不同,返回类型可同也可不同。重载是同一个方法名(包括构造函数)的多种不同实现。2:重写(重写父类继承的方法)原创 2023-03-17 09:38:10 · 69 阅读 · 0 评论 -
java内存溢出的两种情况
解决方案: 1、检查代码中是否存在一次性取出大量数据 2、检查循环体、递归调用中是否有大量导致gc无法回收的对象 3、-Xms -Xmx 配置最大最小堆内存大小,默认 -Xms256m -Xmx512m。2、-Xss 通过这个参数配置默认的jvm栈大小,这个标识即可以通过项目的配置也可以通过命令行来指定,默认 -Xss1m 或者 -Xss0.5m。模拟内存溢出的时候可以设置jvm的启动参数,设置小点的内存量,让它尽快达到内存溢出的效果。从jvm的角度看发生的情况是: 1、动态扩展的栈内存无法满足。原创 2023-03-15 17:55:41 · 696 阅读 · 0 评论 -
Java语言学习:线程唤醒与阻塞
两个方法搭配使用,wait()使线程进入阻塞状态,调用notify()时,线程进入可执行状态。以上是Java线程唤醒和阻塞的五种常用方法,不同的方法有不同的特点,其中wait() 和 notify()是其中功能最强大、使用最灵活的方法,但这也导致了它们效率较低、较容易出错的特性,因此,在实际应用中应灵活运用各种方法,以达到期望的目的与效果!是当前线程A调用另一个线程B的join()方法,当前线程转A入阻塞状态,直到线程B运行结束,线程A才由阻塞状态转为可执行状态。会使的线程放弃当前分得的cpu。原创 2023-03-16 09:36:01 · 188 阅读 · 0 评论 -
Spring使用时, 易犯的几大错误
在命名时保持语义上的一致性,可以创建一个易于搜索的结构,任何新的开发人员都可以按照自己的方式管理代码;虽然理解特定库的内部结构及其实现,在很大程度上是好的并且很有必要的(也可以是一个很好的学习过程),但作为软件工程师,不断地处理相同的底层实现细节对个人的开发生涯是有害的。由并行执行程序所引起的问题是令人毛骨悚然且难以捉摸的,而且常常难以调试 —— 实际上,由于问题的本质,一旦你意识到你正在处理一个并行执行问题,你可能就不得不完全放弃调试器了,并 “手动” 检查代码,直到找到根本上的错误原因。原创 2023-03-15 09:55:03 · 145 阅读 · 0 评论 -
Python与Java的12点区别盘点
Python的产生几十年了,几十年前面向过程是主流,所以用Python有好多程序用的是面向过程设计方法,很多概念从c语言过来的,class在Python中是后加入的,而java是为了实现没有指针的c++(当年com组件用的引用记数,java用的虚拟机),主要采用面向对象的设计方法,很多概念是oop的概念。如果你要直接用程序生成金钱用Python,Python可以实现宽客金融,数据回测,炒股,炒期权,炒黄金,炒比特币,对冲套利,统计套利,有很多开源库,数据分析库,机器学习库可以参考。原创 2023-03-14 13:20:06 · 117 阅读 · 0 评论 -
Java循环语法介绍
概述:在同一个类中,出现方法名相同,参数列表不同(个数不同,对应的类型)的两个或以上方法时,称为方法重载。do..while循环的循环体至少执行一次,而其他两个循环是先判断,然后决定是否执行。continue:只能用于循环中,用来结束本次循环,进行下一次循环,循环还会接着执行。(先这么记,不严谨,因为构造方法没有返回值类型)矩形星阵: 外循环控制的是行,内循环控制的是列。矩形星阵: 外循环控制的是行,内循环控制的是列。第一次:先走1,再走2,看2的结果是true还是false,原创 2023-03-11 23:05:48 · 106 阅读 · 0 评论 -
JQuery前端如何操作JSON
通过上面这个表达式,就完成了将服务器端响应给客户端的Json格式的字符串解析成了一个Json(格式的)对象,名称为“json”,通过“json.”或者“json[]”的方式便可进行数据访问。通过上面的计算,也可以将服务器端响应给客户端的Json格式的字符串解析成了一个Json(格式的)对象,但是该对象名称为“r”,通过“r.”或者“r[]”的方式可进行数据访问。4.对象和数组可以互相嵌套,即数组中的一个元素可以是一个对象也可以是一个数组,同理对象中的一个属性的值可以是一个对象也可以是一个数组。原创 2023-03-11 10:25:00 · 943 阅读 · 0 评论