av

用Java实现FTP服务器解决方案

FTP命令FTP的主要操作都是基于各种命令基础之上的。编程思路根据FTP的工作原理,在主函数中建立一个服务器套接字端口,等待客户端请求,一旦客户端请求被接受,服务器程序就建立一个服务器分线程,处理客户端的命令。我们利用一个静态字符串变量initDir来保存服务器线程运行时所在的工作目录。服务器的初始工作目录是由程序运行时用户输入的,缺省为C盘的根目录。·QUIT命令处理代码如下:if{out.println;done=true;}该命令退出及关闭与服务器的连接,输出GOODBYE。

javamail收取Hotmail的退信

Hotmail是我最常用的EmailClient。虽然时下hotmail的容量是小了些,速度也常常慢得让人不禁问候盖茨的母亲。不象很多的POP3服务器,hotmail实现了邮件传送状态通知。multipart/report邮件类型的介绍参见RFC1892,Sun的中文JavamailFaq里也有相关的说明,我摘录如下:问.当消息不能被传送时,就会返回一个失败消息。这使得将“回弹”消息与产生问题的原始消息相互关联起来非常困难。大家都知道,hotmail不是用pop3协议收信,而是用webdav协议。用jav

初学java常用开发工具介绍

学过程序设计的人知道,使用Basic进行程序设计,可以使用QBasic、VisualBasic等开发工具;使用C语言进行程序设计,可以使用TurboC、VisualC++、C++Builder等开发工具。学习Java程序设计,同样需要方便易用的开发工具。Java的开发工具很多,而且各有优缺点,初学者往往不知道有哪些常用的开发工具,或者由于面临的选择比较多而产生困惑。本文对初学者常使用的Java开发工具作一介绍,有助于初学者了解Java常用开发工具并做出选择。要建立Java开发环境,离不开Sun的JAVA2

运行时实现Java的多态性

运行时多态性是面向对象程序设计代码重用的一个最强大机制,动态性的概念也可以被说成“一个接口,多个方法”。Java实现运行时多态性的基础是动态方法调度,它是一种在运行时而不是在编译期调用重载方法的机制,下面就继承和接口实现两方面谈谈java运行时多态性的实现。另外,如果子类继承的超类是一个抽象类,虽然抽象类不能通过new操作符实例化,但是可以创建抽象类的对象引用指向子类对象,以实现运行时多态性。

Java多线程编程之限制优先级

限制线程优先级和调度Java线程模型涉及可以动态更改的线程优先级。JVM标准首先调用优先级较高的线程,然后才调用优先级较低的线程。但是,该标准对具有相同优先级的线程的处理是随机的。请记住,Java支持10个优先级,基层操作系统支持的优先级可能要少得多,这样会造成一些混乱。通常情况下,请不要依靠线程优先级来控制线程的状态。小结本文说明了在Java程序中如何使用线程。

Java新手入门的30个基本概念

前言:在我们学习Java的过程中,掌握其中的基本概念对我们的学习无论是J2SE,J2EE,J2ME都是很重要的,J2SE是Java的基础,所以有必要对其中的基本概念做以归纳,以便大家在以后的学习过程中更好的理解java的精髓,在此我总结了30条基本的概念。Java的白皮书为我们提出了Java语言的11个关键特性。

JavaBeans程序开发

JavaBeans的属性JavaBeans的属性与一般Java程序中所指的属性,或者说与所有面向对象的程序设计语言中对象的属性是一个概念,在程序中的具体体现就是类中的变量。在JavaBeans设计中,按照属性的不同作用又细分为四类:Simple,Index,Bound与Constrained属性。这种事件是传递到其它的Beans,至于接收事件的Beans应做什么动作由其自己定义。

php&java(二)

为了使用PHP测试这个JAVA类,我们创建一个phptest.php文件,内容如下:如果你得到这样的警告信息:java.lang.ClassNotFoundExceptionerror,这就意味着你的phptest.class文件不在你的java.class.path目录下。注意的是JAVA是一种强制类型语言,而PHP不是,这样我们在将它们融合时,容易导致错误,于是我们在向JAVA传递变量时,要正确指定好变量的类型。如:$myj->foo=12345678;or$myj->foo="12345678

初探Java类加载机制

今天我们就来探讨一下在jvm中这些机制是怎样运行的。在java.lang包里有个ClassLoader类,ClassLoader的基本目标是对类的请求提供服务。当JVM需要使用类时,它根据名称向ClassLoader请求这个类,然后ClassLoader试图返回一个表示这个类的Class对象。它在本地文件系统中寻找类文件,如果存在,就使用defineClass将原始字节转换成Class对象,以将该文件转换成类。当使用特殊方法,定制的ClassLoader不能找到类时,可以使用这种方法。