麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學院 > 開發設計 > 正文

在中文Windows95環境下用Java設計漢字動畫

2019-11-18 13:35:01
字體:
來源:轉載
供稿:網友

  java語言是目前為止最新、推廣最快的一種新型面向對象程序設計語言,由于Java具有面向對象、平臺無關性、穩固性與安全性、多線程等特性,從而為用戶提供了一個良好的程序設計環境。它利用面向對象方法,提供了一組用于圖形用戶界面(GUI)開發的類,這些類包含在抽象窗口工具集(Abstract Windows Toolkit,簡稱AWT)中。利用這些類,我們可以非常方便地設計出與平臺無關、界面友好的應用程序。但由于Java目前還不支持漢字,因此我們選用支持Java語言的中文Windows 95平臺來設計漢字動畫程序。下面即是一個簡單的示例程序。

我們知道,Java設計的程序分為兩種:一類是由Java解釋器解釋執行的Java應用;另一類是必須嵌入到Web頁中,由Java兼容瀏覽器(如:Sun公司的Hotjava、Netscape的Navigator)來控制執行的JavaApplet;下面的程序即是一個必須嵌入到Web頁中的Applet。Applet有其固定的程序框架。它要求在主事件中至少實現下列五種方法之一:
初始化方法init():創建對象、設置初始狀態、參數等
啟動方法start():啟動Applet開始運行
停止方法stop():停止Applet運行
刪除方法destroy():殺死Applet所有正在運行的線程,釋放對象
繪制方法paint():在屏幕上顯示信息

在本例Applet中,實現了start()、stop和paint()三種方法。
在實際應用中,應用程序往往需要同時處理多個事件,如,一方面進行圖形顯示,另一方面接收用戶輸入。在不支持多線程的情況下,我們只能依次完成每個事件。在支持多線程的Java中,就可以創建一個線程專門用來進行圖形顯示,而在主事件中接收用戶輸入,兩者并發執行。創建線程必須實現線程類(Thread)的run()方法,運行系統通過調用run()方法來實現線程的行為。

下面,我們來看例子程序myAnimator.java。在Java中,沒有類就無法運行程序。我們建立了一個Applet類的子類myAnimator,并實現了Runnable界面。實現Runnable界面的目的是為了創建線程。線程體定義在run()方法中,循環地調用repaint()方法,然后調用sleep()方法使線程睡眠delayTime時間。睡眠時間到,線程又被喚醒,再次執行循環體。repaint()方法調用了paint()方法。在paint()方法中,先設置字型及大小,再根據變量flag值為0、1、2、3,設置顏色為紅、綠、黃、藍四種顏色之一。調用draw?String()方法在屏幕上輸出漢字串。然后使flag值加一。若falg大于3,把flag置為0。程序開始執行時,先啟動start()方法,在start()方法中啟動線程,在屏幕上以紅、綠、黃、藍四種顏色循環顯示漢字串,實現了動畫顯示。

為了運行這個Applet,必須把它嵌入到Web頁中。我們編寫了一個簡單的Html文件myAnimator.html。CODE屬性指定Applet的文件名為myAnimator.class。WIDTH和HEIGHT分別指定了Applet的顯示寬度和高度。然后在中文Windows95的DOS模式下,用如下命令來編譯:
c:/hotjava/bin/javacmyAnimator.java

編譯通過后,生成myAnimator.class字節碼文件。這時即可用瀏覽Applet的工具appletviewer來瀏覽該HTML,命令如下:
c:/hotjava/bin/appletviewermyAnimator.html
需要注重的一點是,在支持長文件名的Windows95下,保留大小寫但不區分大小寫。而Java是區分大小寫的,而且文件名需與類名相同。
源程序myAnimator.java
//漢字動畫APPLET
//WritedbyLJY1997.6.20

importjava.awt. :
publicclassmyAnimatorextendsjava.applet.AppletimplementsRunnable
{intdelayTime=100;//線程睡眠時間
intflag=0;
Threadanimator;//定義線程
Fontf=newFont(″TimesRoman″,Font.BOLD,48);//創建字型類實例
Stringname=″漢字動畫演示″;
publicvoidstart()
{animator=newThread(this);//創建線程

animator.start();//啟動線程}
publicvoidrun()//線程體
{while(animator!=null)//假如線程已創建,循環執行
{repaint();//向屏幕輸出
try{
Thread.sleep(delayTime);//線程睡眠

}catch(InterruptedExceptione){
break;}
}}
publicvoidstop()
{animator.stop();//停止線程
animator=null;}
publicvoidpaint(Graphicsg)


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 一区二区三区在线播放视频 | av免费在线观看国产 | 男女羞羞的视频 | 91精品国产99久久久久久红楼 | 日本成人在线播放 | 亚洲成人在线免费观看 | 久久久久久久久久91 | 91网站链接| 国产精选电影免费在线观看网站 | 毛毛片在线看 | 成人精品一区二区三区中文字幕 | 久久久久久久久久久高潮一区二区 | 美女视频在线观看黄 | 亚洲成人黄色片 | 亚洲国产精品久久久久久久久久久 | 竹内纱里奈和大战黑人 | 国产成人精品免高潮在线观看 | 在线成人影视 | 成人激情综合网 | 欧美一级性| 福利在线小视频 | 把娇妻调教成暴露狂 | 国产大片全部免费看 | 黄色试看视频 | 欧美高清一级片 | 97黄色网| 黄色视屏免费观看 | 国产精品久久久不卡 | www.99re14.com| 日本黄色一级毛片 | 最新av网址在线观看 | 午夜伦情电午夜伦情电影 | 成人福利电影在线观看 | 国产午夜电影在线观看 | 一级裸体视频 | 国产一区二区三区四区五区在线 | 亚洲免费在线看 | 在火车上摸两乳爽的大叫 | 精品一区二区在线观看视频 | 看一级毛片 | 韩国草草影院 |