java基礎(chǔ)3
1.面向過程:是一種謂語和賓語的關(guān)系,。對窗口操作的函數(shù)與窗口本身的定義沒有任何關(guān)系,。面向?qū)ο螅菏且环N主語和謂語的關(guān)系。
2.除了基本數(shù)據(jù)的8種類型外都是變量類型或者說是引用類型,。數(shù)組類型也屬于引用類型,。
3.比較兩個數(shù)組的方法,可以用Array的equals方法,。
4.強內(nèi)聚(許多功能盡量在類的內(nèi)部獨立完成,,不讓外面干擾),弱耦合(盡量提供給外部少的方法調(diào)用),。比如總統(tǒng)指揮一支部隊,,不必了解部隊細節(jié),。
5.static類型的方法不屬于任何對象。所以不需要創(chuàng)建對象就可以直接調(diào)用該方法,。
6.先執(zhí)行成員變量初始化的代碼,,然后才去執(zhí)行構(gòu)造方法中的代碼。
7.方法內(nèi)部的this表示使用該方法時的那個對象,。所以this事先是不知道是誰的,,只有當(dāng)對象創(chuàng)建出來并且調(diào)用該方法的時候才會起作用。this表示“我所在的那個對象”,。
特殊情況下用于將部件加入到容器之中,,或者用一個構(gòu)造方法調(diào)用第二個構(gòu)造方法。
例子程序:
容器的用法:
- class Container {
- Component com;
- public void addCompnent() {
-
- com = new Component(this);
- }
- }
-
- class Component {
- Container c;
- public Component(Container c) {
-
- this.c = c;
- }
-
- }
構(gòu)造方法的用法:
- class Person {
- private String name;
- private int age;
- public Person(String name){
- this.name = name;
- }
- public Person(String name,int age)
- this(name);
- this.age = age;
-
- }
8.finalize 和System.gc搭配使用,,手動清除系統(tǒng)中的垃圾。
9.靜態(tài)方法不能以任何方式引用this和super,。靜態(tài)方法不能直接訪問類中的非靜態(tài)成員,。如在main方法中不能直接調(diào)用非靜態(tài)成員,必須先創(chuàng)建一個對象,。
10.static代碼塊:
static
{
**************
}//在用到類的方法時才會執(zhí)行
static常用在單態(tài)設(shè)計模式(單例模式)
11.內(nèi)部類可以訪問外部類的數(shù)據(jù),,但外部類不能訪問內(nèi)部類的數(shù)據(jù)。內(nèi)部類在創(chuàng)建的時候保留了對外部類的一個引用,,
所以如果某變量在內(nèi)部類找不到的話可以根據(jù)該引用繼續(xù)在外部類中查找,。
12.內(nèi)部類和外部類擁有相同的變量名時:
- public class OutClass {
- private int size = 1;
- class Inner {
- private int size = 2;
- public void dostuff(int size) {
- size++;
- this.size++;
- OutClass.this.size++;
- }
- }
- }
13.內(nèi)部類在方法中時,,不能訪問方法中定義的普通變量,。除非該變量使用final關(guān)鍵字。
14.使用java文檔注釋,。用javadoc命令來自動生成文檔
/**
*
*@version
*@author
*param Name 名字
*/
注釋信息應(yīng)該寫在類或者方法的前面,,param表示用到的一些參數(shù),“Name”表示參數(shù)名,,“名字”表示該參數(shù)的解釋信息,。
最終生成的文檔和java API中的有關(guān)類解釋的文件格式相同,生成的文件格式是html文件