Java 学习方法浅谈
Java本身是一种设计的非常简单,非常精巧的语言,所以Java背后的原理也很简单,归结起来就是两点: 1、JVM的内存管理 理解了这一点,所有和对象相关的问题统统都能解决 2、JVM Class Loader 理解了这一点,所有和Java相关的配置问题,包括各种App Server的配置,应用的发布问题统统都能解决 就像张无忌学太极剑,本质就是一圈一圈的画圆,你要是懂得了太极剑的本质,那么太极剑就那么一招而已,本身是很容易学的,只是难度在于你要能够举一反三,化一式剑意为无穷无尽的剑招,这就需要一点悟性和不断的实践了;反过来说,如果学剑不学本质
我学习使用java的一点体会 xuyongshuo(原作)
2002年初,因为公司的业务需要而学习java,并应用java开发项目。由于项目时间紧,没有充裕的时间系统学习java,对java的学习只能是项目需要用什么,就学什么,这种学习方法的上手快,但不扎实,在以后的工作中,因为java学的不扎实,吃了不少苦头。现在我学习应用java已经有一年半的时间,对java已经有了一定的体会,把自己的体会写出来,供网友分享。以我个人的经验,学习java应分以下几个阶段:java的语法学习 面向对象观念的建立 java基本类库的学习 学习设计模式 应用设计模式 经过大量的实践,可以设计模式 以上六个阶段,其中前三个
Java 程序员的独孤九剑
总诀式——《Thinking in Java》 破剑式——《Effective Java Programming Language Guide》 破刀式——《Design patterns: Elements of Reusable Object Oriented Software》 破枪式——《Core J2EE Patterns》 破鞭式——《Refactoring: Improving the Design of Existing Code》 破索式——《AntiPatterns: Refactoring Software, Architectures, and Projects in Crisis》 破掌式——《Analysis Patterns: Reusable Object Models》 破箭式——《Extreme Programming Explained: Embrace Change》 破气式——《Data M
请不要忽视这些基础知识~
第一,谈谈final, finally, finalize的区别。 final 用于声明属性,方法和类,分别表示属性不可变,方法不可覆盖,类不可继承。finally是异常处理语句结构的一部分,表示总是执行。finalize是Object类的一个方法,在垃圾收集器执行的时候会调用被回收对象的此方法,可以覆盖此方法提供垃圾收集时的其他资源回收,例如关闭文件等。第二,Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类,是否可以implements(实现)interface(接口)? 可以继承其他类或完成其他接口,在swing编程中常用此方式。 第三,Static Nested Class
Java程序员的推荐阅读书籍
《Java程序员的推荐阅读书籍》JavaEye (http://www.javaeye.com)范凯(http://robbin.javaeye.com)作为Java程序员来说,最痛苦的事情莫过于可以选择的范围太广,可以读的书太多,往往容易无所适从。我想就我自己读过的技术书籍中挑选出来一些,按照学习的先后顺序,推荐给大家,特别是那些想不断提高自己技术水平的Java程序员们。一、Java编程入门类对于没有Java编程经验的程序员要入门,随便读什么入门书籍都一样,这个阶段需要你快速的掌握Java基础语法和基本用法,宗旨就是“囫囵吞枣不求甚解”,先对Java熟悉起来再说。用很短的时间快速
软件框架以及编码规范说明文档
1 文档简介 此文档主要是描述软件架构和编码的技术规范。详细地说明所确定的整个框架所涉及到的技术的外部行为,以及表现形式。另外,涉及到具体编写代码时,类、方法的命名规范。2 软件框架 2.1 框架介绍 本框架主要是基于Hibernate 3.0 + Struts 1.2.x + Servlet 2.4 + Jsp 2.0 + JSTL 1.2 ( Spring 1.2)构建而成。推荐使用eclipse 3.x作为软件开发工具,tomcat 5.x作为web容器。对于软件的测试,推荐使用eclipse集成的JUnit作为测试工具。项目的版本控制器,使用的是VSS,不要整个项目check out,而应该check out你自己修改的部分,修
java入门,QAD设计模式
什么是DAO DAO是Data Access Object数据访问接口,数据访问:故名思义就是与数据库打交道。夹在业务逻辑与数据库资源中间。 DAO的功能: 1. DAO用来封装Data Source的..就比如,Connection conn = DAOFacotry.createConnection().. 就可以把Driver. URL. username, passpword这一些放在DAO中 以后要更改数据库的类型.比如要把MSSQL换成Oracle的话..只需要更改DAOFacory里面的getConnection()里面的Driver.URL.之类的.. 2. DAO也是把对数据库的操作(比如最基本的CRUD操作)全部封装在里面.. 比如说你要你要插入一个新的
java 基本数据类型和包装类
java是一种面向对象语言,java中的类把方法与数据连接在一起,并构成了自包含式的处理单元.但在java中不能定义基本类型(primitive type),为了能将基本类型视为对象来处理,并能连接相关的方法,java为每个基本类型都提供了包装类,这样,我们便可以把这些基本类型转化为对象来处理了.这些包装类有:Boolean,Byte,Short,Character,Integer,Long,Float,Void等. 值得说明的是,java是可以直接处理基本类型的,但是在有些情况下我们需要将其作为对象来处理,这时就需要将其转化为包装类了.所有的包装类(Wrapper Class)都有共同的方法,他们是:(1)带有基本
JAVA操作数组的异常
数组是程序员经常会用到的数据结构。在进行数组操作如复制时有可能会产生三种异常。NullPointerException 这个异常的产生可能是因为源数组或是目的数组并没有引用到一个数组的实例,也就是说数组引用的值为NULL时,就会产生这个异常。ArrayIndexOutOfBoundsException 当数组索引值指定错误时或是起始位置给错了,也可能是拷贝数据的个数超出数组的大小范围。ArrayStroeException 产生的原因可能是来源或是目的根本就不是数组,或者是来、目的数组不是基本数据类型的数组。 另外说一个题外话,对于数组的操作
类名与.java文件名的关系
一个 .java 文件,可以有多个类,但是文件名只能有一个,用哪一个类名来充当文件名呢?其实文件名是无所谓的,因为将来用 javac 进行编译的时候,最终会生成多个 .class 文件,每一个类对应一个 .class 文件。运行时只要运行对应的 .class 文件就可以了,这时 .java 文件就显得没什么用了( 运行时不需要 ),那还管它叫什么名字。但是当你的类被 public 修饰时,此时文件名必须和该类保持一致(例如 public class A{} 只能放在 A.java 文件中,不然在用 javac 编译时会提示错误:类 A 是公共的,应在名为 A.java 的文件中声明)。也就是说在
看Java、C#大比拚
Java和C#都提供了对网络的不同抽象层,编程人员可以使用不同的网络接口完成对网络的操作。 Java C# 应答/请求: java.net.URL和java.net.URLConnection。 System.Net.WebRequest。 协议: TCP/IP协议使用java.net.Socket和java.net.ServerSocket; UDP协议使用java.net.DatagramSocket和java.net.MulticastSocket。 CP/IP协议使用System.Net.Sockets.TCPListener和System.Net.Sockets.TCPClient; UDP协议使用TSystem.Net.Sockets.UDPClient 原始套接字层: 没有。 System.Net.Sockets.Socket 应答/请求层可以用于HTTP类的请求,其中的
借用对象数据库db4o简化开发过程
2007-06-14 来自:java060515 [收藏到我的网摘]Ted Neward在最近写的一篇介绍db4o中数据库重构的文章中,强调了在开发过程,特别是以测试驱动为主的过程中,使用像db4o这样的对象型数据库要比使用关系型数据库节省很多力气。 Java开发人员在使用RDBMS(关系数据库管理系统)进行开发时,要么是使用手写的JDBC处理代码将查询结果映射到Java对象,要么通过Hibernate或者JPA等框架自动完成映射。但是这样处理的不足之处,是每次发生重构时,都必须对代码做出修改。而使用对象数据库db4o则可以巧妙地避开这一问题。在Ted Neward刊发在deve
黑莓拟在Java开发环境中增添新API
黑莓制造商RIM公司希望在Java开发环境中增加黑莓应用设计界面(API)使开发者扩展黑莓在更多领域中的应用。新的应用设计界面能够使开发者在手机上通过访问另外的功能,包括音频、信息和地图,构建社交网络、多媒体和其他类型的应用。 黑莓Java开发环境基于Java Micro版本,应用设计界面能够在黑莓手机中整合多种应用软件。新的移动多媒体应用设计界面能够使开发者在应用中置入定制的音频和视频内容,并调用黑莓媒体播放器。新的音频应用设计界面支持多种音频文件格式,包括MP3、 WAV、Windows媒体音频(WMA)和高级音频译码(AAC
反向控制和面向切面编程在Spring的应用
摘 要 针对传统的J2EE架构方案常常无法让人满意:程序过于复杂,难以测试和维护成本高。根据企业实际需求,本文探讨了一种轻量级的J2EE应用框架Spring ,它用更加轻量、更加灵活的基础设施取代了EJB。在此对Spring背后的反向控制原理和面向切面编程技术进行了比较深入研究,并与传统实现进行对比,显示了这种框架具有大大降低开发成本,可测试等优点。 关键词 Spring;反向控制;面向切面编程;POJO;依赖注入 引言 在J2EE的整个发展历程中,现在正是一个非常时刻。从很多方面来说,J2EE都是一个伟大的成功:它成功地在从前没