拥有Java标签的文章
Java

JAVA内存泄漏——内存泄漏原因和内存泄漏检测工

摘要虽然Java虚拟机(JVM)及其垃圾收集器(garbagecollector,GC)负责管理大多数的内存任务,Java软件程序中还是有可能出现内存泄漏。实际上,这在大型项目中是一个常见的问题。避免内存泄漏的第一步是要弄清楚它是如何发生的。本文介绍了编写Java代码的一些常见的内存泄漏陷阱,以及编写不泄漏代码的一些最佳实践。一旦发生了内存泄漏,要指出造成泄漏的代码是非常困难的。因此本文还介绍了一种新工具,用来诊断泄漏并指出根本原因。该工具的开销非常小,因

系统 2019-08-29 23:05:05 1565

Java

推荐给所有在自学JavaWeb的朋友们---自学者之参

在Java技术领域,JavaWeb应用开发空前活跃,致使许多程序员都积极地学习有关JavaWeb开发技术,但是面对众多的开发技术,许多人会感到困惑,不知如何学习,如何在实战中应用这些技术。本书就是为完整地学习JavaWeb开发技术后,想整合应用且逐步过渡到轻量级JavaEE开发的人员准备的。本书内容融入了作者多年的JavaWeb开发经验。本书第二版在前版的基础上扩充了相关的基础知识,并提供了更贴切的实用型案例。此书被多所高校采用为教材,在第二版的修订中,因

系统 2019-08-29 22:44:27 1565

Java

java试题解析

1.publicclassReturnIt{returnTypemethodA(bytex,doubley){//line2return(short)x/y*2;}}whatisvalidreturnTypeformethodAinline2?答案:返回double类型,因为(short)x将byte类型强制转换为short类型,与double类型运算,将会提升为double类型.2.1)classSuper{2)publicfloatgetNum(){r

系统 2019-08-29 22:39:54 1565

Java

Java版战棋(SLG)游戏AI及寻径处理入门

代码下载地址:http://download.csdn.net/source/1047937SLG或者说战棋游戏,在大多数英文站点是归类到SimulationGame的(包括模拟城市之类的纯SIM),并没有进行SRPG(StrategiesRolePlayGames)、RTS(Real-TimeStrategyGame)乃至RSLG(RoleplaySimulationGame)种种的细分。归结原因,想必还是因为近似因素太多,在大多数时候已经难以区分其本来

系统 2019-08-29 22:39:52 1565

Java

Java6学习笔记39——日志操作

1.简介:ava.util.logging,它可以对程序中的日志记录进行相当复杂的控制。例如:通过它可以指定日志的级别和日志的位置(控制台、文件、套接字、内存缓冲区),也可以创建子记录器,通过它可以用程序控制的方式来指定想记录的内容,也可以使用配置文件来指定,而不需要去改动程序。2.体系:3.实例:importjava.util.logging.Logger;importjava.util.logging.Level;importjava.util.log

系统 2019-08-29 22:27:15 1565

Java

Java编程提高性能时需注意的地方

最近的机器内存又爆满了,出了新增机器内存外,还应该好好review一下我们的代码,有很多代码编写过于随意化,这些不好的习惯或对程序语言的不了解是应该好好打压打压了。下面是参考网络资源和总结一些在java编程中尽可能做到的一些地方1.尽量在合适的场合使用单例使用单例可以减轻加载的负担,缩短加载的时间,提高加载的效率,但并不是所有地方都适用于单例,简单来说,单例主要适用于以下三个方面第一,控制资源的使用,通过线程同步来控制资源的并发访问第二,控制实例的产生,以

系统 2019-08-29 22:01:06 1565

Java

Java内存模型详解[转]

内存模型(memorymodel)内存模型描述的是程序中各变量(实例域、静态域和数组元素)之间的关系,以及在实际计算机系统中将变量存储到内存和从内存取出变量这样的低层细节.不同平台间的处理器架构将直接影响内存模型的结构.在C或C++中,可以利用不同操作平台下的内存模型来编写并发程序.但是,这带给开发人员的是,更高的学习成本.相比之下,java利用了自身虚拟机的优势,使内存模型不束缚于具体的处理器架构,真正实现了跨平台.(针对hotspotjvm,jrock

系统 2019-08-12 09:30:25 1565

Java

JAVA强制类型转换

object对象转换为String的一些总结--------------------------------------------------------------------------------在java项目的实际开发和应用中,常常需要用到将对象转为String这一基本功能。本文将对常用的转换方法进行一个总结。常用的方法有Object.toString(),(String)要转换的对象,String.valueOf(Object)等。下面对这些方

系统 2019-08-12 09:29:33 1565

Java

java中函数使用变长参数

java中函数使用变长参数2010-01-0121:09当参数个数不确定时,开发者很想使用变长参数,让调用者以更灵活的方式调用。此种方法和方法重载有同样的效果,但是个人感觉比方法重载用着简洁。一直知道Java支持变长参数函数,然而项目中一直没有用到,前几天在项目中看到前辈大量使用变长参数,感觉有很好的效果。特别是API设计中能够解决很多不确定因素。下面是一个简单的变长参数示例变长参数使用的形式是Type...argsName,即类型+省略号+参数名Java

系统 2019-08-12 09:29:32 1565

Java

监控Java应用程序Windows内存使用情况

尽管Java™运行时能够解决大量的内存管理问题,但对程序的内存占用情况保持警惕仍然是优化机器性能、测定内存泄露的关键。Windows上有很多工具可以监控内存的使用。但每种工具各有长短,都有特定的倾向性,常常没有明确地定义自己测量的是什么。作者将澄清关于内存使用的一些常见误解,介绍很多有用的工具,同时还将提供何时以及如何使用它们的指南。

Java

Android中各种JAVA包的功能描述

Android中各种JAVA包的功能描述2009-09-2913:05在Android的应用程序开发中,通常使用的是JAVA语言,除了需要熟悉JAVA语言的基础知识之外,还需要了解Android提供的扩展的JAVA功能。在一般的JAVA应用中,如果需用引用基础类库,通常需要使用如下的方式:importjavax.swing.*;以上代码表示了引用JAVA的GUI组件Swing,javax.swing即JAVA中的一个包。android提供一些扩展的JAVA

系统 2019-08-29 23:17:33 1564

Java

面向Java开发人员的Ajax: 结合DWR(Direct Web R

理解Ajax编程的基本知识是重要的,但是如果正在构建复杂的用户界面,那么能够在更高层次的抽象上工作也很重要。在面向Java开发人员的Ajax系列的第3篇文章中,我在上个月的Ajax的数据序列化技术基础之上,介绍一种可以避免繁琐的Java对象序列化细节的技术。在上一篇文章中,我介绍了如何用JavaScript对象标注(JSON)以一种在客户机上容易转化成JavaScript对象的格式对数据进行序列化。有了这个设置,就可以用JavaScript代码调用远程服务

系统 2019-08-29 23:11:13 1564

Java

入门-JAVA运行环境变量的配置图文教程

对于使用命令行的用户,需要配置环境变量。对于采用Eclipse或者JBuilder的用户,则此步骤不是必须的!*在我的电脑上按右键,选择属性*选择上面的[高级],然后选择下面的[环境变量]*在底部的系统变量里面,查找变量为JAVA_HOME的,如果没有,则点击[新建],在弹出的对话框里,变量名写入,JAVA_HOME,在变量值里面,填写:C:\ProgramFiles\Java\jdk1.6.0_04*点击[确定],查找Path的环境变量,[编辑],在最后

系统 2019-08-29 23:04:11 1564

Java

轻松实现Java 用户界面编程

Buoy是一个构建在Swing之上的免费用户界面(UI)工具包,它为UI开发人员提供了方便性和简单性。在本文中作者用一个简单的fractal用户界面程序,介绍了Buoy可以做什么、为什么这么做。第一次尝试用Java语言构建简单的用户界面时,我对Swing接口的复杂性感到有些惊讶。老实说,有点想打退堂鼓。最近,一个朋友向我提到,他使用的渲染程序ArtofIllusion(请参阅参考资料)基于一个不同的工具包:Buoy。推荐它的原因之一是它的界面更友好。当他第

系统 2019-08-29 22:45:14 1564

Java

Java实现类MSN、QQ好友上线通知界面

相信大家都使用过MSN,QQ这样的即时聊天类软件,对于它们的好友上线提示功能并不陌生吧?从屏幕右下角弹出一个小界面,慢慢上升,最后消失。我们能不能在自已的程序中也做出相同的功能呢?能!笔者现用JAVA和eclipse的SWT用户界面组件实现这个功能。什么是SWT呢?SWT原来是eclipse项目组为开发eclipseIDE所编写的图形界面API,运行时,其先判断本机是否有相同的界面元素,如果有则直接调用显示,如没有才进行模拟显示。其运行机制使速度比AWT,

系统 2019-08-29 22:27:01 1564