字符串
1、獲取字符串的長(zhǎng)度
length()
2 、判斷字符串的前綴或后綴與已知字符串是否相同
前綴 startsWith(String s)
后綴 endsWith(String s)
3、比較兩個(gè)字符串
equals(String s)
4、把字符串轉(zhuǎn)化為相應(yīng)的數(shù)值
int型 Integer.parseInt(字符串)
long型 Long.parseLong(字符串)
float型 Folat.valueOf(字符串).floatValue()
double型 Double.valueOf(字符串).doubleValue()
4、將數(shù)值轉(zhuǎn)化為字符串
valueOf(數(shù)值)
5、字符串檢索
indexOf(Srting s) 從頭開(kāi)始檢索
indexOf(String s ,int startpoint) 從startpoint處開(kāi)始檢索
如果沒(méi)有檢索到,將返回-1
6、得到字符串的子字符串
substring(int startpoint) 從startpoint處開(kāi)始獲取
substring(int start,int end) 從start到end中間的字符
7、替換字符串中的字符,去掉字符串前后空格
replace(char old,char new) 用new替換old
trim()
8、分析字符串
StringTokenizer(String s) 構(gòu)造一個(gè)分析器,使用默認(rèn)分隔字符(空格,換行,回車,Tab,進(jìn)紙符)
StringTokenizer(String s,String delim) delim是自己定義的分隔符
nextToken() 逐個(gè)獲取字符串中的語(yǔ)言符號(hào)
boolean hasMoreTokens() 只要字符串還有語(yǔ)言符號(hào)將返回true,否則返回false
countTokens() 得到一共有多少個(gè)語(yǔ)言符號(hào)
文本框和文本區(qū)
1、文本框
TextField() 構(gòu)造文本框,一個(gè)字符長(zhǎng)
TextField(int x) 構(gòu)造文本框,x個(gè)字符長(zhǎng)
TextField(String s) 構(gòu)造文本框,顯示s
setText(String s) 設(shè)置文本為s
getText() 獲取文本
setEchoChar(char c) 設(shè)置顯示字符為c
setEditable(boolean) 設(shè)置文本框是否可以被修改
addActionListener() 添加監(jiān)視器
removeActionListener() 移去監(jiān)視器
2、文本區(qū)
TextArea() 構(gòu)造文本區(qū)
TextArea(String s) 構(gòu)造文本區(qū),顯示s
TextArea(String s,int x,int y) 構(gòu)造文本區(qū),x行,y列,顯示s
TextArea(int x,int y) 構(gòu)造文本區(qū),x行,y列
TextArea(String s,int x,ing y,int scrollbar)
scrollbar的值是:
TextArea.SCROLLBARS_BOTH
TextArea.SCROLLBARS_VERTICAL_ONLY
TextArea.SCROLLBARS_HORIZONTAL_ONLY
TextArea.SCROLLBARS_NONE
setText(String s) 設(shè)置文本為s
getText() 獲取文本
addTextListener() 添加監(jiān)視器
removeTextListener() 移去監(jiān)視器
insert(String s,int x) 在x處插入文本s
replaceRange(String s,int x,int y) 用s替換從x到y(tǒng)處的文本
append(String s) 在文本的最后追加文本s
Int getCaretPosition(int n) 獲取文本區(qū)中光標(biāo)的位置
按鈕
1、按鈕
Button() 構(gòu)造按鈕
Button(String s) 構(gòu)造按鈕,標(biāo)簽是s
setLabel(String s) 設(shè)置按鈕標(biāo)簽是s
getLabel() 獲取按鈕標(biāo)簽
addActionListener() 添加監(jiān)視器
removeActionListener() 移去監(jiān)視器
標(biāo)簽
1、標(biāo)簽
Label() 構(gòu)造標(biāo)簽
Label(String s) 構(gòu)造標(biāo)簽,顯示s
Label(String s,int x)
x是對(duì)齊方式,取值:
Label.LEFT
Label.RIGHT
Label.CENTER
setText(String s) 設(shè)置文本s
getText() 獲取文本
setBackground(Color c) 設(shè)置標(biāo)簽背景顏色
setForeground(Color c) 設(shè)置字體顏色
選擇框
1、選擇框
Checkbox() 構(gòu)造選擇框
Checkbox(String s) 構(gòu)造選擇框,給定標(biāo)題s
Checkbox(String s,boolean b) b設(shè)定初始狀態(tài)
Checkbox(String s,boolean b,CheckboxGroup g) g設(shè)定了所屬的組(有了組就成為單選框)
addItemListener() 添加監(jiān)視器
removeItemListener() 移去監(jiān)視器
getState() 返回選擇框的是否選中狀態(tài)
setState(boolean b) 設(shè)置選擇框的狀態(tài)
getLabel() 獲取選擇框的標(biāo)題
setLabel(String s) 設(shè)置選擇框的標(biāo)題為s
選擇控件和滾動(dòng)列表
1、選擇控件
Choice() 構(gòu)造選擇控件
add(String s) 向選擇控件增加一個(gè)選項(xiàng)
addItemListener() 添加監(jiān)視器
removeItemListener() 移去監(jiān)視器
getSelectedIndex() 返回當(dāng)前選項(xiàng)的索引
getSelectedItem() 返回當(dāng)前選項(xiàng)的字符串代表
insert(String s,int n) 在n處插入選項(xiàng)s
remove(int n)
removeAll()
2、滾動(dòng)列表
List() 構(gòu)造滾動(dòng)列表
List(int n) 參數(shù)n是可見(jiàn)行數(shù)
List(int n,boolean b) 參數(shù)b是設(shè)置是否可以多項(xiàng)選擇
add(String s) 向列表的結(jié)尾增加一個(gè)選項(xiàng)
add(String s,int n) 在n處增加一個(gè)選項(xiàng)
AddActionListener() 滾動(dòng)列表添加監(jiān)視器
addItemListener() 滾動(dòng)列表上的選項(xiàng)添加監(jiān)視器
remove(int n) 刪除n初的選項(xiàng)
remnoveAll() 刪除全部選項(xiàng)
getSelectedIndex() 返回當(dāng)前選項(xiàng)的索引
getSelectedItem() 返回當(dāng)前選項(xiàng)的字符串代表
3、組件類的一些常用方法
void setBackground(Color c) 設(shè)置組件背景顏色
void setForeground(Color c) 設(shè)置組件前景顏色
void setFonts(Font f) 設(shè)置組件字體
void setBounds(int x,int y,int w,int h) 設(shè)置坐標(biāo),x,y表示在容器中坐標(biāo),w,h表示寬和高
void setLocation(int x,int y) 移動(dòng)到x,y 處
void setSize(int w,int h) 設(shè)置寬和高
void setVisible(boolean b) 設(shè)置組建是否可見(jiàn)
int getBounds().wigth 獲取寬
int getBounds().height 獲取高
int getBounds().x 獲取x 坐標(biāo)
int getBounds().y 獲取y 坐標(biāo)
Toolkit getToolkit() 獲取工具包對(duì)
void setEnabled(boolean b) 設(shè)置是否可以使用(默認(rèn)可以)
窗口和菜單
1、窗口
Frame() 構(gòu)造窗口
Frame(String s) 窗口標(biāo)題是s
setBounds(int x,int y,int w,int h) 窗口位置x,y,寬w,高y
setSize(int w,int h) 設(shè)置窗口位置(單位是像素)
setBackground(Color c) 設(shè)置背景顏色
setVisible(boolean b) 設(shè)置窗口是否可見(jiàn)
pack() 窗口出現(xiàn)時(shí)緊湊
setTitle(String s) 設(shè)置標(biāo)題為s
getTitle() 獲取標(biāo)題
setResizable(boolean b) 設(shè)置窗口大小是否可以調(diào)整
2、菜單條
Menubar() 構(gòu)造菜單條
setMenubar() 窗口添加菜單條
3、菜單
Menu() 構(gòu)造菜單
Menu(String s) 構(gòu)造菜單,標(biāo)題s
add
add(MenuItem item) 菜單增加菜單選項(xiàng)item
add(String s) 向菜單增加選項(xiàng)s
getItem(int n) 獲取n處的選項(xiàng)
getItemCount() 獲取選項(xiàng)數(shù)目
insert(MenuItem item,int n) 在n處插入菜單選項(xiàng)item
insert(String s,int n) 在n處插入菜單選項(xiàng)
remove(int n) 刪除菜單的n處的菜單選項(xiàng)
removeAll() 刪除全部
4、菜單項(xiàng)
MenuItem() 構(gòu)造菜單項(xiàng)
MenuItem(String s) 構(gòu)造標(biāo)題是s的菜單項(xiàng)
setEnabled(boolean b) 設(shè)置是否可以被選擇
getLabel() 得到菜單選項(xiàng)名
addActionListener() 添加監(jiān)視器
5、有關(guān)菜單的技巧
addSeparator() 增加菜單分割線
CheckboxMenuItem() 復(fù)選框菜單項(xiàng)
setShortcut(MenuShortcut k) 設(shè)置快捷鍵(k取值KeyEvent.VK_A----KeyEvent.VK_Z)
建立對(duì)話框
1、Dialog類
Dialog(Frame f,String s) 構(gòu)造對(duì)話框,初始不可見(jiàn),s是標(biāo)題,f是對(duì)話框所依賴的窗口
Dialog(Frame f,String s,boolean b) b設(shè)置初始是否可見(jiàn)
getTitle() 獲取對(duì)話框標(biāo)題
setTitle(String s) 設(shè)置對(duì)話框標(biāo)題
setModal(boolean b) 設(shè)置對(duì)話框模式
setSize(int w,int h) 設(shè)置對(duì)話框大小
setVisible(boolean b) 顯示或隱藏對(duì)話框
2、FileDialog類
Filedialog(Frame f,String s,int mode) mode的值是fileDialog.LOAD或者fileDialog.SAVE
public String getDirectory() 獲取當(dāng)前文件對(duì)話框中顯示的文件所屬目錄
public String getFile() 獲取當(dāng)前文件對(duì)話框中文件的字符串表示,不存在返回null
Java中的鼠標(biāo)和鍵盤(pán)事件
1、使用MouseListener借口處理鼠標(biāo)事件
鼠標(biāo)事件有5種:按下鼠標(biāo)鍵,釋放鼠標(biāo)鍵,點(diǎn)擊鼠標(biāo)鍵,鼠標(biāo)進(jìn)入和鼠標(biāo)退出
鼠標(biāo)事件類型是MouseEvent,主要方法有:
getX(),getY() 獲取鼠標(biāo)位置
getModifiers() 獲取鼠標(biāo)左鍵或者右鍵
getClickCount() 獲取鼠標(biāo)被點(diǎn)擊的次數(shù)
getSource() 獲取鼠標(biāo)發(fā)生的事件源
事件源獲得監(jiān)視器的方法是addMouseListener(),移去監(jiān)視器的方法是removeMouseListener()
處理事件源發(fā)生的時(shí)間的事件的接口是MouseListener 接口中有如下的方法
mousePressed(MouseEvent) 負(fù)責(zé)處理鼠標(biāo)按下事件
mouseReleased(MouseEvent) 負(fù)責(zé)處理鼠標(biāo)釋放事件
mouseEntered(MouseEvent) 負(fù)責(zé)處理鼠標(biāo)進(jìn)入容器事件
mouseExited(MouseEvent) 負(fù)責(zé)處理鼠標(biāo)離開(kāi)事件
mouseClicked(MouseEvent) 負(fù)責(zé)處理點(diǎn)擊事件
2、使用MouseMotionListener接口處理鼠標(biāo)事件
事件源發(fā)生的鼠標(biāo)事件有2種:拖動(dòng)鼠標(biāo)和鼠標(biāo)移動(dòng)
鼠標(biāo)事件的類型是MouseEvent
事件源獲得監(jiān)視器的方法是addMouseMotionListener()
處理事件源發(fā)生的事件的接口是MouseMotionListener 接口中有如下的方法
mouseDragged() 負(fù)責(zé)處理鼠標(biāo)拖動(dòng)事件
mouseMoved() 負(fù)責(zé)處理鼠標(biāo)移動(dòng)事件
3、控制鼠標(biāo)的指針形狀
setCursor(Cursor.getPreddfinedCursor(Cursor.鼠標(biāo)形狀定義)) 鼠標(biāo)形狀定義見(jiàn)(書(shū) P 210)
4、鍵盤(pán)事件
鍵盤(pán)事件源使用addKeyListener 方法獲得監(jiān)視器
鍵盤(pán)事件的接口是KeyListener 接口中有3個(gè)方法
public void keyPressed(KeyEvent e) 按下鍵盤(pán)按鍵
public void keyReleased(KeyEvent e) 釋放鍵盤(pán)按鍵
public void keyTypde(KeyEvent e) 按下又釋放鍵盤(pán)按鍵
Java多線程機(jī)制
1、Java的線程類與Runnable接口
Thread類
public Thread() 創(chuàng)建線程對(duì)象
public Thread(Runnable target) target 稱為被創(chuàng)建線程的目標(biāo)對(duì)象,負(fù)責(zé)實(shí)現(xiàn)Runnable接口
線程優(yōu)先級(jí)
Thread類有三個(gè)有關(guān)線程優(yōu)先級(jí)的靜態(tài)常量:MIN_PRIORITY,MAX_PRIORITY,NORM_PRIORITY
新建線程將繼承創(chuàng)建它的副相承的優(yōu)先級(jí),用戶可以調(diào)用Thread類的setPriority(int a)來(lái)修改
a的取值:
Thread.MIN_PRIORITY,Thread.MAX_PRIORITY,Thread.NORM_PRIORITY
主要方法
啟動(dòng)線程 start()
定義線程操作 run()
使線程休眠 sleep()
sleep(int millsecond) 以毫秒為單位的休眠時(shí)間
sleep(int millsecond,int nanosecond) 以納秒為單位的休眠時(shí)間
currentThread() 判斷誰(shuí)在占用CPU的線程
第二十章 輸入輸出流
1、FileInputStream類
FileInputStream(String name) 使用給定的文件名name創(chuàng)建一個(gè)FileInputStream對(duì)象
FileInputStream(File file) 使用File對(duì)象創(chuàng)建FileInpuStream對(duì)象
File類有兩個(gè)常用方法:
File(String s) s確定文件名字
File(String directory,String s) directory是文件目錄
例如:
File f=new File("Myfile.dat");
FileInputStream istream=new FileInputStream(f);
處理I/O異常
當(dāng)出現(xiàn)I/O錯(cuò)誤的時(shí)候,Java生成一個(gè)IOException(I/O異常)對(duì)象來(lái)表示這個(gè)錯(cuò)誤的信號(hào)。
程序必須使用一個(gè)catch檢測(cè)這個(gè)異常
例如:
try{
FileInputStream ins= new FileInputStream("Myfile.dat");
}
catch(IOException e){
System.out.println("File read Error:"+e);
}
從輸入流中讀取字節(jié)
int read() 返回0~255之間一個(gè)整數(shù),如果到輸入流末尾,則返回-1
int read(byte b[]) 讀取字節(jié)數(shù)組
int read(byte b[],int off,int len) off指定把數(shù)據(jù)存放在b中什么地方,len指定讀取的最大字節(jié)數(shù)
關(guān)閉流
close()
2、FileOutputStream類
FileOutputStream(String name) 使用指定的文件名name創(chuàng)建FileOutputStream對(duì)象
FileOutputStream(File file) 使用file對(duì)象創(chuàng)建FileOutputStream對(duì)象
FileOutputStream(FileDescriptor fdobj) 使用FileDescriptor對(duì)象創(chuàng)建FileOutputStream對(duì)象
3、FileReader類和FileWriter類
FileReader(String filename)
FileWriter(String filename)
處理時(shí)需要FileNotFoundException異常
4、RandomAccessFile類
RandomAccessFile不同于FileInputStream和FileOutputStream,不是他們的子類
當(dāng)我們想對(duì)一個(gè)文件進(jìn)行讀寫(xiě)操作的時(shí)候,創(chuàng)建一個(gè)指向該文件的RandomAccessFile流就可以了
RandomAccessFile類有兩個(gè)構(gòu)造方法:
RandomAccessFile(String name, String mode) name是文件名,mode取r(只讀)或rw(讀寫(xiě))
RandomAccessFile(File file,String mode) file給出創(chuàng)建流的源
seek(long a) 移動(dòng)RandomAccessFile流指向文件的指針,a確定指針距文件開(kāi)頭的位置
getFilePointer() 獲取當(dāng)前文件的指針位置
close() 關(guān)閉文件
getFD() 獲取文件的FileDescriptor
length() 獲取文件長(zhǎng)度
read() 讀取一個(gè)字節(jié)數(shù)據(jù)
readBoolean() 讀取一個(gè)布爾值
readByte() 讀取一個(gè)字節(jié)
readChar()
readFloat()
readFully(byte b[])
readInt()
readLine()
readLong()
readUnsignedShort()
readUTF() 讀取一個(gè)UTF字符串
setLength(long newLength) 設(shè)置文件長(zhǎng)度
skipByte(int n) 在文件中跳過(guò)給定數(shù)量的字節(jié)
write(byte b[]) 寫(xiě)b.length個(gè)字節(jié)到文件
writeBoolean(bolean b)
writeByte(int v)
writeChar(char c)
writeChars(String s)
writeDouble(double d)
writeFloat(float v)
writeInt(int i)
writeLong(long l)
writeShort(int i)
writeUTF(String s)
5、管道流
PipedInputStream類
PipedInputStream() 創(chuàng)建一個(gè)管道輸入流
PipedInputStream(PipedOutputStream a) 連接到輸出流a的輸入流
read() 從輸入流中讀取一個(gè)字節(jié)
read(byte b[],int off,int len) off是在b中的開(kāi)始位置,len是字節(jié)長(zhǎng)度
PipedOutputStream類
PipedOutputStream() 創(chuàng)建一個(gè)輸出流
PipedOutputStream(PipedInputStream a) 連接到輸入流a的輸出流
write(int b)
write(byte b[],int off,int len)
counnect() 連接輸入輸出流
close() 關(guān)閉流
在使用的時(shí)候要捕獲IOException異常。
6、數(shù)據(jù)流
DataInputStream類(數(shù)據(jù)輸入流)
DataInputStream(InputStream in) 將數(shù)據(jù)輸入流指向一個(gè)由in指定的輸入流
DataOutputStream類(數(shù)據(jù)輸出流)
DataOutputStream(OutputStream out) 將數(shù)據(jù)輸出流指向一個(gè)由out指定的輸出流
主要方法:
close()
read() 讀取一個(gè)字節(jié)數(shù)據(jù)
readBoolean() 讀取一個(gè)布爾值
readByte() 讀取一個(gè)字節(jié)
readChar()
readFloat()
readFully(byte b[])
readInt()
readLine()
readLong()
readUnsignedShort()
readUTF() 讀取一個(gè)UTF字符串
skipByte(int n) 在文件中跳過(guò)給定數(shù)量的字節(jié)
write(byte b[]) 寫(xiě)b.length個(gè)字節(jié)到文件
writeBoolean(bolean b)
writeByte(int v)
writeChar(char c)
writeChars(String s)
writeDouble(double d)
writeFloat(float v)
writeInt(int i)
writeLong(long l)
writeShort(int i)
writeUTF(String s)
7、對(duì)象流
ObjectInputStream類和ObjectOutputStream類分別是DataInputStream類和DataOutputStream類的子類
8、回壓輸入流
PushbackInputStream類
PushbackInputStream(InputStream in)
PushbackReader類
PushbackReader(Reader in)
unread(char c) 回壓一個(gè)字符
unread(char c[]) 回壓數(shù)組c中全部字符
unread(char c[],offset,int n) 回壓c中從offset開(kāi)始的n個(gè)字符
java網(wǎng)絡(luò)的基本知識(shí)
1、使用URL(統(tǒng)一資源定位)
例如:
try
{
url=new URL("http://www.sina.com.cn";
}
catch(MalformedURLException e)
{
System.out.println("Bad URL:"+url);
}
在Applet 中鏈接向另外的Web頁(yè)面,使用代碼:
getAppletContext().showDocument(url);
2、套接字
客戶建立到服務(wù)器的套接字(Socket)
Socket(String host,int port) host是服務(wù)器的IP地址,port是端口號(hào)
建立了套接字后可以使用getInputStream()獲得輸入流
還可以使用getOutputStream()獲得一個(gè)輸出流
服務(wù)器建立接受客戶套接字的服務(wù)器套接字(ServerSocket)
ServerSocket(int port) port是端口號(hào)
建立了套接字連接后可以使用accept()接收客戶的套接字
可以使用getOutputStream()獲得一個(gè)輸出流
還可以使用getInputStream()獲得一個(gè)輸入流
3、InetAddress類
getByName(String )
3、InetAddress類
getByName(String s) 獲取Internet上主機(jī)的地址
getHostName() 獲取InetAddress對(duì)象所包含的域名
getHostAddress() 獲取InetAddress對(duì)象所包含的IP地址
getLocalHost() 獲取本地地址
4、UDP數(shù)據(jù)報(bào)
發(fā)送數(shù)據(jù)包,即使用DatagramPacket類將數(shù)據(jù)打包,有兩種構(gòu)造方法
DatagramPacket(byte data[],int length,InetAddress address,int port)
?含有data數(shù)組的數(shù)據(jù)
?該數(shù)據(jù)包將發(fā)送到地質(zhì)是address,端口是port的主機(jī)上
DatagramPacket(byte data[],int offset,int length,InetAddress address,int port)
?含有data數(shù)組的從offset開(kāi)始,length長(zhǎng)度的數(shù)據(jù)
?該數(shù)據(jù)包將發(fā)送到地質(zhì)是address,端口是port的主機(jī)上
接收數(shù)據(jù)包,即使用DatagramSocket(int port)創(chuàng)建一個(gè)對(duì)象,port必須和待接收的數(shù)據(jù)包的端口相同
例如:
如果發(fā)送方的數(shù)據(jù)包端口是5566
DatagramSocket mail=new DatagramSocket(5566);
然后對(duì)象mail可以使用方法receive(Datagrampacket pack)接收數(shù)據(jù)包
在使用參數(shù)pack 接收數(shù)據(jù)包前,必須創(chuàng)建pack
byte data[]=new byte[100];
int length=90;
DatagramPacket pack=new DatagramPataet(data,length);
mail.receive(pack);
該數(shù)據(jù)包pack將接收長(zhǎng)度是length的數(shù)據(jù)放入data,注意數(shù)據(jù)長(zhǎng)度不要超過(guò)8192KB
pack還可以調(diào)用方法getPort()獲取所接受數(shù)據(jù)包是從什么端口發(fā)出的
調(diào)用方法InetAddress getAddress()可以獲知數(shù)據(jù)包來(lái)自哪個(gè)主機(jī)
Java與圖像
1、java支持的圖像類型:GIF,JPEG,BMP
2、Image類
首先申請(qǐng)一個(gè)Image對(duì)象
Image img =getImage(URL url,String name) url是圖像地址,name是圖片名稱
通常使用:
Image img =getImage(getCodBase(),String name) getCodBase()獲取當(dāng)前小應(yīng)用程序的URL,也就是在同一目錄下
圖像被加載后,就可以在paint()中繪制了
drawImage(Image img,int x,int y,ImageObserver observer)
img是上面獲取的圖像, x,y是指定圖像左上角的位置,observer是加載圖像時(shí)的圖像觀察器
Applet類已經(jīng)實(shí)現(xiàn)了ImageObserver接口,所以可以直接使用this作為最后一個(gè)參數(shù)
drawImage(Image img,int x,int y,int width,int height,ImageObserver observer)
width和height是要繪制的圖像的寬和高
可以使用img.getHeight(this)和img.getWidth(this)來(lái)獲取被加載的圖像的寬和高
3、設(shè)置Java窗口圖標(biāo)
Frame對(duì)象可以使用setIconImage(Image img)方法設(shè)置左上角圖標(biāo),默認(rèn)圖標(biāo)是咖啡杯
Java數(shù)據(jù)庫(kù)連接(JDBC)
1、JDBC-ODBC橋接器
建立JDBC-ODBC橋接器
try
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
}
catch(ClassNotFoundException e){}
連接到數(shù)據(jù)庫(kù)
try
{
Connection con=DriverManager.getConnection("jdbcdbc:數(shù)據(jù)源名稱","數(shù)據(jù)源的login name",
"數(shù)據(jù)源的password");
}
catch(SQLException e){}
向數(shù)據(jù)庫(kù)發(fā)送SQL語(yǔ)句
try
{
Statement sql=con.createStatement();
}
catch(SQLException e){}
處理查詢結(jié)果
ResultSet rs=sql.executeQuery("SQL語(yǔ)句");
第二十四章 Java與多媒體
1、在小程序中播放聲音
java可以播放au,aiff,wav,midi,rfm格式的音頻
可以調(diào)用Applet的一個(gè)靜態(tài)方法:
newAudioClip(URL url,String name) url是地址,name是音頻名稱
也可以用Applet類的實(shí)例方法:
getAudioClip(URL url,String name)
根據(jù)url地址和聲音文件name,獲得一個(gè)用于播放的音頻對(duì)象,這對(duì)象可以使用下面的方法來(lái)處理聲音:
play() 播放聲音文件name
loop() 循環(huán)播放name
stop() 停止播放name
2、Java媒體框架(JMF)
創(chuàng)建播放器
try
{
URL url=new URL(getDocumenBase(),視頻文件名稱);
player player=Manager.createPlayer(url);
}
catch(IOException e){}
向播放器注冊(cè)控制監(jiān)視器
player.addControllerListener(監(jiān)視器);
創(chuàng)建監(jiān)視器必須使用接口ControllerListener ,該接口中的方法是
public void controllerUpdate(ControllerEvent e)
讓播放器對(duì)媒體進(jìn)行預(yù)提取
player.prefetch()
啟動(dòng)播放器
player.start();
停止播放器
player.stop();
停止播放器后必須釋放內(nèi)存中的資源
player.deallocate();
Java Swing基礎(chǔ)
1、Jcomponent類
Jcomponent類 是所有輕量組件的父類,主要的子類有:
JButton 創(chuàng)建按鈕對(duì)象,而且可以創(chuàng)建在圖標(biāo)的按鈕
JComboBox 創(chuàng)建組合框?qū)ο螅虲hoice相似
JCheckBox 創(chuàng)建復(fù)選框?qū)ο?
JFileChooser 創(chuàng)建文件選擇器
JInternalFrame 創(chuàng)建內(nèi)部窗體
JLabel 創(chuàng)建標(biāo)簽
JMenu 創(chuàng)建菜單對(duì)象
JMenuBar 創(chuàng)建菜單條對(duì)象
JMenuItem 創(chuàng)建菜單項(xiàng)對(duì)象
JPanel 創(chuàng)建面板對(duì)象
JPasswordField 創(chuàng)建口令文本對(duì)象
JPopupMenu 創(chuàng)建彈出式菜單
JProgressBar 創(chuàng)建進(jìn)程條
JRadioButton 創(chuàng)建單選按鈕
JScrollBar 創(chuàng)建滾動(dòng)條
JScrollPane 創(chuàng)建滾動(dòng)窗格
JSlider 創(chuàng)建滾動(dòng)條
JSplitPane 創(chuàng)建拆分窗格
JTable 創(chuàng)建表格
JTextArea 創(chuàng)建文本區(qū)
JTexPane 創(chuàng)建文本窗格
JToolBar 創(chuàng)建工具條
JToolTip 創(chuàng)建工具提示對(duì)象
JTree 創(chuàng)建樹(shù)對(duì)象
2、JFrame類
JFrame類及其子類創(chuàng)建的對(duì)象是窗體
(1)JFrame類及其子類創(chuàng)建的窗體是swing窗體
(2)不可以把組件直接加到swing窗體中,應(yīng)該把組件加到內(nèi)容面板中
(3)不能為swing窗體設(shè)置布局,而應(yīng)當(dāng)為內(nèi)容面板設(shè)置布局
(4)swing窗體通過(guò)調(diào)用getContentPane()方法得到它的內(nèi)容面板
3、JApplet類
(1)不可以把組件直接添加到小程序容器中,也應(yīng)該添加到內(nèi)容面板中
(2)不能為小程序設(shè)置布局
(3)小程序容器通過(guò)調(diào)用getContenPane()方法得到內(nèi)容面板
4、JDialog類
(1)不可以把組件直接添加到對(duì)話框容器中,也應(yīng)該添加到內(nèi)容面板中
(2)不能為對(duì)話框設(shè)置布局
(3)對(duì)話框容器通過(guò)調(diào)用getContenPane()方法得到內(nèi)容面板
5、JPanel面板
JPanel()
JPanel(布局對(duì)象)
6、滾動(dòng)窗口JScrollPane
JScrollPane()
JScrollPane(component c)
7、拆分窗口JSplitPane
JSplitPane(int a,Component b,Component c)
a的取值是HORIZONTAL_SPLIT或者VERTICAL_SPLIT決定水平拆分還是垂直拆分
JSplitPane(int a,boolean b ,Component b,Component c) b的取值決定拆分線移動(dòng)的時(shí)候組件是否連續(xù)變化
8、內(nèi)部窗體JInternalFrame
JInternalFrame(String title,boolean resizable,booleam closable,boolean max,boolean min)
參數(shù)的意義分別是窗口名稱,是否能調(diào)整大小,是否有關(guān)閉按鈕,最大化按鈕,最小化按鈕
(1)不能把組件直接加到窗體中,而是加到內(nèi)容面板中
(2)必須先把內(nèi)部窗體加到一個(gè)容器中(JDesktopPane),該容器是專門為內(nèi)部窗體服務(wù)的
9、按鈕(JButton)
JButton() 創(chuàng)建按鈕
JButton(String s) s是按鈕的名字
JButton(Icon icon) icon是按鈕上的圖標(biāo)
JButton(String s,Icon icon)
getText() 獲取按鈕名字
getIcon() 獲取按鈕圖標(biāo)
setIcon(Icon icon) 設(shè)置按鈕圖標(biāo)
setHorizontalTextposition(int a) a確定按鈕上圖標(biāo)的位置,取值:
AbstractButton_CENTR,AbstractButton_LEFT,AbstractButton_RIGHT
setVerticalTextposition(int a) a確定按鈕上名字相對(duì)圖標(biāo)的位置,取值:
AbstractButton.TOP,AbstractButton.BOTTOM,AbstractButton.CENTR
setMnemonic(char c) 設(shè)置按鈕的鍵盤(pán)操作方式是字符c(Alt+c)
setEnabled(boolean b) b決定按鈕是否可以被單擊