中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

SWT、Swing和AWT有什么區別

發布時間:2021-12-28 09:22:44 來源:億速云 閱讀:177 作者:小新 欄目:編程語言

這篇文章將為大家詳細講解有關SWT、Swing和AWT有什么區別,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

自IBM公司提供的跨平臺GUI開發包SWT以來,越來越多受到廣大程序員的親睞,已經有不少程序員用它開發出美觀、高效、實用的桌面應用程序。這讓我們更有理由去探索SWT給我們帶來的驚奇。

SWT在外觀和性能上都超過了Swing和AWT,為什么這樣說呢?下面簡單的測試程序會讓你一目了然。廢話也不多說,讓我們看Swing和AWT程序。

下面讓我們寫一個簡單的程序來測試一下,程序只做一件事,就是用Label顯示”HelloWorld!”,我的測試環境是JDK1.5.0+Eclipse3.1。看看在SWT、Swing和AWT下分別實現該效果所需要的時間和內存消耗。

AWT_CODE:

import java.awt.Frame;  import java.awt.Label;  import java.awt.event.WindowAdapter;  import java.awt.event.WindowEvent;   public class awtTest {  public static void main(String[] args) {  long memory = 0L;  long time = 0L;  memory = Runtime.getRuntime().freeMemory();  time = System.currentTimeMillis();  Frame frame = new Frame();  Label label = new Label();  label.setText("Hello World!");  frame.add(label);  frame.setVisible(true);  frame.addWindowListener(new WindowAdapter() {  public void windowClosing(WindowEvent we) {  System.exit(0);  }  });  frame.pack();  System.out.println(System.currentTimeMillis() - time);  System.out.println(memory - Runtime.getRuntime().freeMemory());  }  }

SWING_CODE:

import javax.swing.JFrame;  import javax.swing.JLabel;  import java.awt.event.WindowAdapter;  import java.awt.event.WindowEvent;   public class swingTest {  public static void main(String[] args) {  long memory = 0L;  long time = 0L;  memory = Runtime.getRuntime().freeMemory();  time = System.currentTimeMillis();  JFrame frame = new JFrame();  JLabel label = new JLabel();  label.setText("Hello World!");  frame.add(label);  frame.setVisible(true);  frame.addWindowListener(new WindowAdapter() {  public void windowClosing(WindowEvent we) {  System.exit(0);  }  });  frame.pack();  System.out.print("Time:");  System.out.println(System.currentTimeMillis() - time);  System.out.print("Memory:");  System.out.println(memory - Runtime.getRuntime().freeMemory());  }  }

SWT_CODE:

import org.eclipse.swt.widgets.Display;  import org.eclipse.swt.widgets.Shell;  import org.eclipse.swt.widgets.Label;  import org.eclipse.swt.SWT;   public class swtTest {  public static void main(String[] args) {  long memory = 0L;  long time = 0L;  memory = Runtime.getRuntime().freeMemory();  time = System.currentTimeMillis();  Display display = new Display();  Shell shell = new Shell(display);  Label label = new Label(shell, SWT.NONE);  label.setText("Hello World!");  shell.pack();  label.pack();  shell.open();  System.out.print("Time:");  System.out.println(System.currentTimeMillis() - time);  System.out.print("Memory:");  System.out.println(Runtime.getRuntime().freeMemory() - memory);  while(!shell.isDisposed()) {  if(!display.readAndDispatch()) {  display.sleep();  }  }  display.dispose();  label.dispose();  }  }

關于“SWT、Swing和AWT有什么區別”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

济阳县| 扬州市| 祁连县| 泉州市| 岢岚县| 扎鲁特旗| 遂川县| 孝感市| 昌邑市| 北安市| 西宁市| 东山县| 华坪县| 保亭| 黄浦区| 会泽县| 行唐县| 临西县| 滨州市| 兴文县| 共和县| 叙永县| 西畴县| 定结县| 徐闻县| 南靖县| 通道| 来宾市| 南京市| 喀喇| 隆子县| 嵊泗县| 贡嘎县| 抚顺市| 东方市| SHOW| 铅山县| 留坝县| 睢宁县| 新兴县| 仁布县|