欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費電子書(shū)等14項超值服

開(kāi)通VIP
Java筆記(一)

Java筆記(一)

JDK  Java Develop Kit 即Java開(kāi)發(fā)工具包

J2SDK Java2 Software Develop Kit Java軟件開(kāi)發(fā)包

JRE Java Runtime Environment 即Java運行環(huán)境,通常已包含在J2SDK中了.如果我們僅僅是為了運行Java程序,而不是從事Java開(kāi)發(fā),我們可以直接下載JRE,在我們的程序上安裝

Java開(kāi)發(fā)工具包(JDK)分為三個(gè)版本:J2SE J2EE J2ME

Java代碼是解釋執行的,我們使用Java編譯器將Java代碼編譯成字節碼,這是一種中間代碼,然后由Java解釋其解釋執行。而C++程序是編譯執行的,C++程序代碼被編譯為本地機器指令,然后執行

Java語(yǔ)言的一個(gè)重要特性就是在語(yǔ)言級支持多線(xiàn)程的程序設計。

Java是動(dòng)態(tài)的,其動(dòng)態(tài)特性是其面向對象設計方法的擴展。它允許程序動(dòng)態(tài)地裝入運行過(guò)程中所需要的類(lèi),這是我們采用C++語(yǔ)言進(jìn)行面向對象程序設計所無(wú)法實(shí)現的。

Java跨平臺的原理:通過(guò)Java虛擬機(JVM)來(lái)實(shí)現的。
    Java應用程序的開(kāi)發(fā)周期包括編譯、下載、解釋和執行幾個(gè)部分。
    Java編譯程序(javac.exe)將Java源程序翻譯為JVM可執行代碼——字節碼,Java編譯器不將對變量和方法的引用編譯為數值引用,而是將這些符號引用信息保留在字節碼中,由解釋器在運行過(guò)程中創(chuàng )建內存布局,然后再通過(guò)查表來(lái)確定一個(gè)方法所在的地址。
    運行JVM字節碼的工作是由解釋器(java.exe)來(lái)完成的。解釋執行過(guò)程分三步進(jìn)行:代碼的裝入(由類(lèi)裝載器完成)、代碼的效驗和代碼的執行
    Java的平臺獨立性是以JVM為基礎的,但JVM不是跨平臺的

j2sdk文件夾下
    bin(binary二進(jìn)制):放的是java的可執行程序
    demo:sun公司提供的一些例子程序
    lib:類(lèi)庫和一些jre,java運行時(shí)的環(huán)境

比如一個(gè)編譯單元中有個(gè)public類(lèi)welcome,編譯(javac,編譯的是原文件)完成后生成了welcome.class文件,當用解釋器命令Java welcome時(shí),不是加載welcome.class這個(gè)文件,而是加載welcome這個(gè)類(lèi)
 
/* */注釋程序段  //單行注釋 /** */生成注釋文件
 
UltraEdit下的java文件,變紅色的是個(gè)類(lèi),比如:System就是個(gè)類(lèi),out是個(gè)對象,println是個(gè)方法,打印完后面的字符串后換行,print方法不換行,java中\n也表示換行
 
    一維數組:在C中,可以這樣定義數組:int num[3],但在java中,數組在定義的時(shí)候是不能夠分配空間的,所以在[]里面不能寫(xiě)空間大小??梢匀缦露x:
int[] num; num=new int[3]  或  int[] num=new int[3]以給數組分配大小。
可以定義同時(shí)初始化:int[] num={1,2,3}
但int[] num;num={1,2,3}//error
也可以int[] num=new int[]{1,2,3}
int[] num=new int[3]{1,2,3}//error
 
    二維數組:int [][] num;num=new int[3][4]
還可以這樣(每行分配不同長(cháng)度):int [][] num;
                                num=new int[3][];
                                num[0]=new int[5];
                                num[1]=new int[3];
                                num[2]=new int[2];
可以這樣int [][] num={{1,2,3},{4,5},{6}}
 
java中移位運算符:<<左移 >>帶符號右移 >>>無(wú)符號右移 x<<2左移兩位 左移一位乘以2,右移一位除以2
 
要查一個(gè)方法的時(shí)候首先要知道方法所在的包名,比如java.lang,包下面是類(lèi)庫中的類(lèi),java中所有基本數據類(lèi)型都有相對應的類(lèi),比如Integer、double、float、Character
 
類(lèi)是創(chuàng )建對象的模板,對象是類(lèi)的實(shí)例。類(lèi)實(shí)質(zhì)上定義的是一種數據類(lèi)型,這種數據類(lèi)型就是對象類(lèi)型。所以我們可以使用類(lèi)名稱(chēng)來(lái)聲明對象變量。聲明對象變量后,還不能使用對象。必須用運算符new創(chuàng )建對象實(shí)體之后,才能使用對象。
例如:有一個(gè)類(lèi)Point
 Point pt; //聲明對象
 pt=new Point();//常見(jiàn)對象實(shí)體
 pt.x……
 
類(lèi)的構造方法:
  構造方法的名字和類(lèi)名相同,并且沒(méi)有返回值
  構造方法主要用于為類(lèi)的對象定義初始化狀態(tài)
  我們不能直接調用構造方法,必須通過(guò)new關(guān)鍵字來(lái)自動(dòng)調用,從而創(chuàng )加類(lèi)的實(shí)例
  java的類(lèi)都要求有構造方法,如果沒(méi)有定義構造方法,java編譯器會(huì )為我們提供一個(gè)缺省的構造方法,也就是不帶參數的構造方法。當我們用缺省的構造方法初始化對象時(shí),系統用默認值初始化對象的成員變量。但只要類(lèi)中自己提供了構造函數,那么java就不會(huì )提供缺省的構造方法。
各種數據類(lèi)型的默認值為:數值型 0;boolean false; char ‘\0‘; 對象 null;
 
new關(guān)鍵字的作用:
  為對象分配內存空間
  引起對象構造方法的調用
  為對象返回一個(gè)引用
 
反編譯工具javap.exe會(huì )將成員變量和成員方法的信息打印出來(lái),它加載的是類(lèi)
 
方法的重載的構成條件:方法名相同,但參數類(lèi)型或參數個(gè)數不同
 
特殊變量this
  this變量代表對象本身
  當類(lèi)中有兩個(gè)同名變量,一個(gè)屬于類(lèi)(類(lèi)的成員變量),而另一個(gè)屬于某個(gè)特定的方法(方法中的局部變量),使用this區分成員變量和局部變量
  使用this簡(jiǎn)化構造函數的調用。例如:
  class Point
{
   int x,y;
   Point(a,b)
   {
      x=a;
      y=b;
   }
   Point()
   {
     this(1,1)  //會(huì )調用帶參數的構造函數
   }
   void output()
   {
      System.out.println(x);
      System.out.println(x);
   }
   public static void main(String[] args)
     {
     Point pt;
     pt=new Point();
     pt.output();
     }
}
 
一個(gè)類(lèi)所有的實(shí)例(對象)調用的成員方法在內存中只有一份拷貝,盡管在內存中可能有多個(gè)對象。而數據成員在類(lèi)的每個(gè)對象所在內存中都存在著(zhù)一份拷貝。this變量允許相同的實(shí)例方法為不同的對象工作。每當調用一個(gè)實(shí)例方法時(shí),this變量將被設置成引用該實(shí)例方法的特定的類(lèi)對象。方法的代碼接著(zhù)會(huì )與this所代表的對象的特定數據建立關(guān)聯(lián)
 
關(guān)鍵字static
    靜態(tài)方法和靜態(tài)變量是屬于某一個(gè)類(lèi),而不屬于類(lèi)的對象
    靜態(tài)方法和靜態(tài)變量的引用直接通過(guò)類(lèi)名引用
    在靜態(tài)方法中不能調用非靜態(tài)的方法和引用非靜態(tài)的成員變量。但反之,可以
    可以用類(lèi)的對象obj去調用靜態(tài)的方法method(),如obj.method()
    類(lèi)變量和類(lèi)方法在類(lèi)加載的時(shí)候也被加載并分配了內存空間
 
常量的定義
    使用關(guān)鍵字final定義常量(其值在運行時(shí)不能改變):final double PI=3.1415926
    作為一種約定,在定義常量時(shí),通常采用大寫(xiě)形式
    final常量可以在聲明的同時(shí)賦初值,也可以在構造函數中賦初值(若為static常量則不可)
    為了節省內存,我們通常將常量聲明為靜態(tài)的(static):static final double PI=3.1415926
在Java中,通過(guò)關(guān)鍵字extends繼承一個(gè)已有的類(lèi),被繼承的類(lèi)稱(chēng)為父類(lèi)(超類(lèi),基類(lèi)),新的類(lèi)稱(chēng)為子類(lèi)(派生類(lèi)):class Fish extends Animal

在Java中,不允許多繼承。構造方法是不能被繼承的
 
在子類(lèi)中定義一個(gè)與父類(lèi)同名、返回類(lèi)型、參數類(lèi)型均相同的一個(gè)方法,稱(chēng)為方法的覆蓋。覆蓋發(fā)生在子類(lèi)與父類(lèi)之間
 
特殊變量super:
    特殊變量super,提供了對父類(lèi)的訪(fǎng)問(wèn)
    可以使用super訪(fǎng)問(wèn)父類(lèi)被子類(lèi)隱藏的變量或覆蓋的方法
    每個(gè)子類(lèi)構造方法的第一條語(yǔ)句,都是隱含地調用super(),如果父類(lèi)沒(méi)有這種形式的構造函數,那么在編譯的時(shí)候就會(huì )報錯
 
多態(tài)性
    通過(guò)覆蓋父類(lèi)的方法來(lái)實(shí)現,在運行時(shí)根據傳遞的對象引用,來(lái)調用相應的方法。若將子類(lèi)對象的引用傳遞給聲明為父類(lèi)的參數,若子類(lèi)有這個(gè)方法,就調用子類(lèi)的方法,若子類(lèi)沒(méi)有這個(gè)方法,就調用父類(lèi)的方法
 
instanceof:判斷一個(gè)對象是否是一個(gè)類(lèi)的實(shí)例:if(an instanceof Animal)……
本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請點(diǎn)擊舉報。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
面向對象編程,我的思想
Java繼承的基本概念及其限制 總結
一個(gè)月的JAVA總結
Java基礎知識
JAVA編程中的類(lèi)和對象
Java基礎總結篇
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導長(cháng)圖 關(guān)注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服

欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久