|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
主要缺点就是:速度比较慢,没有C和C++快
Java作为一种收集编程言语,在扫瞄器中便可以举行动画演示,也能够播放声响。在人机的交互过程当中,为了增强效果或起到提醒的感化,必要到场声响。
Java的包java.applet中有AudioClip接口,此接口封装有关声响片段的一些经常使用办法。用法以下:
AudioClipaudio;
audio=getAudioClip(getCodeBase(),"Hi.au");
audio.play();
第一行天生接口AudioClip的一个变量,第二行使用此变量获得声响文件Hi.au,此文件与程序自己在统一目次下,getCodeBase()办法是用来获得Applet的class文件的URL地点。第三行是播放声响文件。在Applet中使用此用法可在扫瞄器中收回声响。那末,在Application中是不是也能够用此办法来收回声响呢?不成以。由于接口AudioClip是在包java.applet中,而此包只合用于Applet。是不是能够用别的办法来完成呢?我们能够使用1中的技能来编写一个即是Applet又是Application的程序尝尝。了局,仍是不可。这是由于play()办法只能在Applet中完成,关于Applicationplay()办法是不克不及够被挪用的。
那末,怎样在Application中完成发声提醒呢?
记得VB中有beep语句来使体系发声器(SystemSpeaker)发声,那末,Java中也应有相似的办法。
在Java的java.awt.Toolkit类中无方法beep()是来完成这一功效的。类Toolkit是笼统类,它是完成AWT的一切工具的父类。Java中的笼统类是不克不及够实例化的,可是一样平常地,笼统类能够天生变量,然后使用笼统类中的某一办法来获得此类的替换品。在Toolkit中是使用getDefaultToolkit()办法来完成的。如今给出一个实例:
这是一个客户机/服务器的Application。当服务器运转时假如有客户机与服务器相连,则服务器会主动发声警报提醒服务器真个用户有客户要与本人举行对话。
----程序以下:
服务器:- importjava.util.*;
- importjava.io.*;
- importjava.net.*;
- importjava.awt.*;
- publicclassServerT{
- publicstaticvoidmain(String[]args){
- Serverserver;
- StringclientRequest;
- booleanquit=false;
- server=newServer(8001);
- while(!quit){
- DataInputStreamkeyboard=new
- DataInputStream(System.in);
- try{
- clientRequest=server.in.readLine();
- if(clientRequest.trim().equals("CLOSE")){
- System.out.println("Clientsays:
- "+clientRequest);
- System.exit(1);
- }
- System.out.println("Clientsays:
- "+clientRequest);
- server.out.println(keyboard.readLine());
- }catch(IOExceptione){
- System.out.println("IOException
- inserver.in.readLine()"+e);
- System.exit(1);
- }
- }
- }
- }
- classServer{
- privateServerSocketserver;
- privateSocketsocket;
- publicDataInputStreamin;
- publicPrintStreamout;
- publicServer(intport){
- try{
- server=newServerSocket(port);
- System.out.println("
- ****************************
- *****************************");
- System.out.println("
- @(#)Net
- ApplecationVersion1.0097/12/30");
- System.out.println("Copyright(c)1997
- (LuiDongBing)AllRightsReserved.");
- System.out.println("
- ******************************
- ***************************");
- System.out.println("
- Serveris:
- "+server);
- socket=server.accept();
- for(inti=0;i<260;i++){//发声提示
- Toolkit.getDefaultToolkit().beep();
- }
- System.out.println("
- Serverisready!
- ");
- in=newDataInputStream(socket.getInputStream());
- out=newPrintStream(socket.getOutputStream());
- out.println("Weconnectin"+newDate());
- }catch(IOExceptione){
- System.out.println("Serverisfailied!");
- }
- }
- }
复制代码 <p>
唉!都是钱闹的1.Swing和.net开发比较------从市场份额看.net开发主要占据大部分的中小型和中型的的桌面开发,原因是它封装了很多工具 |
|