Java入門:使用Java API

什麼是Java類庫

在編寫程序的時候,一般有不少功能是通用的,或者是很基礎的,能夠用這些功能來組成更發雜的功能代碼。好比文件操做,不一樣程序對文件的操做基本都是同樣的,打開文件,關閉文件,讀取文件裏面的數據,往文件中寫數據等等。所不一樣的僅僅是文件路徑不相同,文件內容不一樣。若是把文件相關的操做編寫成一個通用的類,無論哪一個程序員均可以直接使用,而沒必要本身從新編寫一遍操做文件的全部代碼,那麼程序員的工做效率就會大大提升。像這樣把一些具備通用的功能編寫成相應的類代碼,就造成了類庫。java

Java 的類庫是 Java 語言提供的已經實現的標準類的集合,是 Java 編程的 API(Application Program Interface),它能夠幫助開發者方便、快捷地開發 Java 程序。程序員在開發程序的時候,直接調用這些現成的類就能夠了。這些類根據實現的功能不一樣,能夠劃分爲不一樣的集合,每一個集合組成一個包,稱爲類庫。Java 類庫中大部分都是由Sun 公司提供的,這些類庫稱爲基礎類庫程序員

什麼是程序包

包是一種概念,用來組織類。咱們能夠藉助「行政區劃」這個概念來幫助理解程序包。一個國家分不少省,省內又分不少市,還能夠繼續往下細分更多行政單位。這些行政單位界定了一個區域和這片區域上的全部人和物。程序包就至關於行政區劃,行政區劃裏的人和物就至關於程序包裏面的類。因此行政區劃是一種抽象的概念。包和行政區劃同樣,都是一個抽象的概念。包裏面還能夠包含子包。如:com.myJava.utils這樣的一個包名,就比如廣東省.廣州市.天河區。算法

需注意:編程

(1) package 前面還不能有空格。包聲明應該在源文件的第一行,每一個源文件只能有一個包聲明(即只有一條package聲明語句),這個文件中的每一個類型都屬於該包。api

(2) 包名的命名規範,通常所有小寫,Java要求包要有域名前綴,用來區分不一樣的做者,同時是域名的反寫,如com.google.guava.guava-parent。字體

 (3) 包的命名一般和代碼文件的存儲位置相關聯。如上述Something.java文件的保存路徑是 net/java/util/Something.java。由於Something.java文件中聲明的包名是net.java.util      this

 (4) 若是一個源文件中沒有使用包聲明,那麼該類會被編譯器認爲放在一個默認的沒有名稱的默認包中。儘管默認包對於短的例子程序很好用,但對於實際的應用程序它是不適當的。多數狀況,須要爲本身的代碼定義一個包。google

使用Java類庫

使用Java類庫(或Java API)的方法是使用import語句,即在 java 源文件中 import語句應位於 package 語句以後,全部類的定義以前,能夠沒有,也能夠有多條。import導入包有兩種語法形式:spa

單類型導入(single-type-import),              例如 import java.io.File;.net

按需類型導入(type-import-on-demand),例如 import java.io.*;

對於按需類型導入(  import java.io.*;   ),有人誤解爲導入一個包下的全部類,其實否則,看名字就知道,他只會按需導入,也就是說它並不是導入整個包,而僅僅導入當前類須要使用的類。

那麼以上兩種import程序包的方法是否同樣呢?不同!單類型導入和按需類型導入對類文件的定位算法是不同的,具體說明請讀者本身查找相關資料瞭解。

查看JDK的源代碼就知道SUN的軟件工程師通常不會使用按需類型導入。由於使用單類型導入至少有如下兩點好處:

1。提升編譯速度。

2。避免命名衝突。(例如:當你import java.awt.*;import java.util.*後,使用List的時候編譯器將會出編譯錯誤)

固然,使用單類型導入會使用你的import語句看起來很長。

JAVA類庫在線中文文檔參考:http://tool.oschina.net/apidocs/apidoc?api=jdk-zh

實踐訓練

第一步:新建一個小遊戲項目,項目名稱爲MySee。

第二步:網項目中添加一個遊戲窗口類,類名稱爲:DrawSee。在DrawSee.java文件頭部,添加如下程序包:

import java.awt.Color;//顏色
import java.awt.Container;//容器
import java.awt.Font;//字體
import java.awt.Graphics;//全部圖形上下文的抽象基類,容許應用程序在組件上繪製線條、文字等內容
import java.awt.event.MouseAdapter;//接收鼠標事件的抽象適配器類
import java.awt.event.MouseEvent;//鼠標事件

import javax.swing.JFrame;

以上主要使用到java.awt包和javax.swing包。

java.awt:java.awt是一個軟件包,早期編寫圖形界面應用程序的包。如Color類,Font類。

javax.swing:爲解決 AWT 存在的問題而新開發的圖形界面包。Swing是對AWT的改良和擴展。

第三步:在DrawSee.java文件中,添加窗口配置的代碼:

import java.awt.Color;
import java.awt.Container;
import java.awt.Font;
import java.awt.Graphics;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;

import javax.swing.JFrame;

public class DrawSee extends JFrame {
    // 背景顏色
    private Color rectColor = new Color(0xf5f5f5);
    
    public DrawSee(){
        Container p = getContentPane();//獲取窗口的內容面板
        setBounds(100, 100, 500, 500);//調用父類setBounds方法,移動窗口到(100,100)位置,並設置窗口大小爲寬500,高500
        setVisible(true);//調用父類setVisible方法
        p.setBackground(rectColor);//調用對象p的setBackground方法,設置窗口背景顏色
        setLayout(null);   
        setResizable(false);//調用父類setResizable方法,false表示不容許窗口最大化
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//調用父類setDefaultCloseOperation方法,指定窗口關閉時退出程序。    
    }
}

窗口配置的代碼一般放置在初始化方法中,這樣在實例化對象時,窗口的一些屬性就被指定,隨後窗口就會按此設置來顯示。

第四步:給項目添加入口方法。在MySee項目中新增長一個類:AppMain類,類代碼以下:

public class AppMain {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        new DrawSee();
    }

}

第五步:運行程序,便可看到一個空白內容的窗口。

相關文章
相關標籤/搜索