JAVA基礎筆記(二)

java.io
InputStream()輸入
FileInputStream()從本地文件讀取數據字節
pipedInputStream()從線程管道中讀取數據字節
FileterInputStream()包含四個常用子類
1、LineNumberInputStream()在翻譯行結束符的基礎上維護一個計數器
2、DataInputStream()從輸入流中讀取基本數據類型
3、BufferedInputStream()緩衝區對數據訪問,提高效率
4、pushbackInputStream()允許把數據字節向後推到流的首部
ByteArrayInputStream()從內存數組中讀取數據字節
StringBufferInputStream()從字符串中讀取數據字節
ObjectInputStream()從object中讀取數據字節
SequenceInputStream()將多個InputStream合爲一個


OutStream()輸出
FileOutStream()從文件寫入數據字節
pipedOutStream()從線程管道中寫入數據字節
FileterOutStream()包含三個常用子類
1、DataOutStream()從輸出流中寫入基本數據類型
2、BufferedOutStream()緩衝區對數據寫入,提高效率
3、pushbackOutStream()允許把數據字節向後推到流的首部
ByteArrayOutStream()從內存數組中寫入數據字節
StringBufferOutStream()從字符串中寫入數據字節
ObjectOutStream()從object中寫入數據字節


Reader讀取
BufferedReader() 包含子方法LineNumberReader()在翻譯行結束符的基礎上維護一個計數器readLine()讀取一行數據
charArrayReader() 從字符數組中讀取
InputStreamReader() 包含子方法FileReader()從本地文件讀取數據字節
FilterReader() 包含子方法PushbackReader()允許把文本數據推送到讀取器流中
PipedReader() 從管道符中讀取字符序列
StringReader() 從字符串中讀取


Writer寫入
BufferedWriter() 寫入一個Buffered
charArrayWriter() 寫入字符數組
OutputStreamWriter() 包含子方法FileWriter()
FilterWriter() 寫入到本地文件
PipedWriter() 從管道符中寫入字符序列
StringWriter() 從字符串中寫入
printWriter() 寫入一行數據


基本方法
read(||b[]||b[],int,ints)從輸入流中讀取一個字節,返回0~255一個整數||讀取b.length的數據,寫入數組b,返回字節數||讀取ints個數據,寫入數組b,從int開始返回字節數
available()返回輸入流中可讀取的字節
skip(long)當前位置向後移動long個字節,返回實際跳過字節
finalize()清除文件鏈接,回收垃圾,一般用於close之前
close()關閉流
mark(int)從當前位置標記直到int標記失效
reset()重置讀取位置
markSupport()確定輸入流是否支持mark()和reset()方法
write()與read相反  寫入輸出流 Flush()與reset()相反  刷新輸出流






File類
File(String||path,String||File,String)文件的位置加名稱||路徑加文件名||目錄+文件名稱getPath||Name||AbsolutePath||Parent()返回文件路徑||名稱||絕對位置||上一級目錄
renameTo(File)重新命名
exists()測試文件是否存在
canWrite||Read()測試文件能否讀寫
isFile||Pirectory()是否是文件||文件夾目錄


File工具類
lastModified()文件最後一次修改時間
length()文件長度
delete()刪除當前文件
mkdir()生成對象
list()列出當前目錄下文件
getChannel()返回與文件輸出流有關的filechannel對象
getFD()返回與此流有關的文件描述符
RandomAccessFile(path+name,rw/r)構造方法,可充當輸出流和輸入流、包含一下方法:
getFilePointer()獲取文件指針的位置
length()獲取文件長度
write()與read()方法,可讀取或寫入byte.char.double.float.int.Line.Short.UTF
skipBytes(int)跳過字節數
setlength(long)設置文件長度




java.sql
DriverManager管理JDBC驅動程序
Connection建立數據庫連接
statement管理執行sql擁有一個子接口preparedStatement用於執行sql語言
resultset儲存數據查詢返回結果集
date表示與SQLDATE相同的標準
Driver定義一個數據庫驅動程序的接口
SQLException數據庫錯誤的描述信息
SQLWarning產生警告的描述信息


程序→Driver→Connection→statement→resultset→close
Driver:
getConnection(String url||url,user,pass);
Connection:
createStatement()創建鏈接
||isclose()關閉||判斷是否關閉
getMetaData()得到所鏈接數據庫的源數據
statement:
execute(String)執行該數據庫
executeQuery(String)查詢並返回結果集
executeUpdate(String)更新執行(數據庫語句帶有insert,update,delete即是)
close()關閉
resultset:
getDate(String)以Date形式取得指定列的內容
getFloat(int||String)以浮點型按列編號取得指定列的內容||以浮點型取得指定列的內容
getInt(int||String)以整數型按列編號取得指定列的內容||以整數型取得指定列的內容
getString(int||String)以字符串型按列編號取得指定列的內容||以字符串型取得指定列的內容
next()向下移動一位


rs.absolute(...)允許你指定結果集的絕對位置 如果沒有它,假如你要取第1000條記錄的數據,就只能rs.next()1000次了:) 
rs.isAfterLast()是一種特殊的狀態,表徵已到達結果集的結尾,此時你如果調rs.next()就會拋出異常 
rs.next();//向後滾動 
rs.getRow();//得到當前行號 
rs.absolute(n);//光標定位到n行 
rs.relative(int n);//相對移動n行 
rs.first();//將光標定位到結果集中第一行。 
rs.last();//將光標定位到結果集中最後一行。 
rs.beforeFirst()//將光標定位到結果集中第一行之前。 
rs.afterLast();//將光標定位到結果集中最後一行之後。 
rs.moveToInsertRow();//光標移到插入行 
rs.moveToCurrentRow();//光標移回到調用rs.moveToInsertRow()方法前光標所在行




java.lang
Thread(name,target,group)線程名稱,目標對象,所屬線程組
包含的方法:
run()執行的代碼
start()開始執行
sleep(milis)睡眠時間
interrupt()中斷線程
interrupted()是否中斷線程(清除中斷標誌)
isInterrupted()是否中斷線程
join([millis,[nanos]])等待線程結束
destroy()銷燬線程
setPriority(int)設置線程優先級
notify()/notifyAll()喚醒線程,優先級來
wait()阻塞線程
isAlive()是否處於激活狀態
currentThread()返回當前線程對象的引用
set||getName(String)設置||獲取線程名稱
yield()暫停線程,讓其他線程執行
activeCount()返回當前線程中活動的線程,返回線程個數
enumerate(Thread[] a)將當前線程組中活動線程複製到a數組中,返回線程個數
同步數據方法(通過等待線程完畢後執行達到數據同步):
方法一:
synchronized(同步對象){執行業務邏輯}
方法二:
方法申明爲同步方法public synchronized void s(){}


互相等待的同步線程會出現死鎖
wait()釋放同步死鎖
notify()喚醒隊列中第一個線程,並移入同步鎖申請隊列
notifyAll()將所有線程調用wait()方法,優先級執行




java.net
InetAddress類常用方法,無構造方法,包含兩個子類Inet4Address、Inet6Address
getByName(host)返回host所代表的ip地址
getLocalHost()返回本機IP地址
getAddress()返回對象的Internet地址,byte類數組,4個元素
isReachable(int)測試是否可以到達該IP地址
getHostAddress()返回與InetAddress對象關聯的主機地址的字符串

getHostName()返回與InetAddress相關的主機名的字符串


URL類
URL(String spec||URL context,String spec||String protocol,String host,String file||String protocol,String host,int prot,String file)URL對象||URL加不同的文件||協議加域名加文件||協議加域名加端口加文件
getProtocol||Host||File()獲取協議||主機||文件名稱
getRef()獲取URL相對位置
getQuery()獲取URL查詢信息
getPath()獲取URL路徑
getAuthority()獲取URL的權限信息
getUserInfo()獲取URL使用者信息
getPort()獲取該URL的端口號,沒有則返回-1
MalformedURLException e異常處理


URLConnection抽象類
URLConnection()對象建立URL.openConnection();其常用方法如下:
getContentLength()返回取得內容的長度
getContentType()返回取得內容的類型
getDate()返回資源當前日期
getContent()返回此URL鏈接的內容
getInputStream()返回從此打開的鏈接讀取的輸入流
getOutputStream()返回從此打開的鏈接的輸出流


TCP協議傳輸(FTP屬於其中一種專門用來傳輸文件的)
ServerSocket類
ServerSocket(int port)指定服務器端口
ServerSocket(int port,int backlog)指定端口和最大鏈接數
常用方法:
accept()等待客戶端連接,返回一個Socket對象
getInetAddress()返回服務器的IP
isClosed()返回ServerSocket的狀態
close()關閉ServerSocket服務


Socket類
Socket(String host,int port)host+端口
Socket(InetAddress address,int port)IP地址+端口
常用方法:
close()關閉Socket鏈接
getInputStream()獲得輸入流
getOutputStream()獲得輸出流


UDP協議傳輸
DatagramSocket類
DatagramSocket(||port||port,InetAddress)臨時端口||指定端口||指定端口和IP地址
常用方法:
Send(DatagramPacket d)發送報文d到目的地
Receive(DatagramPacket d)接受報文到d中,產生阻塞
SetSoTimeout(int)設置超時時間
Close()關閉DatagramSocket


DatagramPacket類
DatagramPacket(byte[],int)接受長度爲int的報文到byte中
DatagramPacket(byte[],int,address,port)將長度爲int的byte發送到指定IP端口中
常用方法:
getAddress()返回接受或發送此數據報文的機器IP
getData()返回接受或發送的數據
getLength()返回接受或發送數據的長度
getPort()返回接受或發送的數據的遠程主機的端口號

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章