<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    mvc 架構(gòu)

      BlogJava :: 首頁(yè) :: 聯(lián)系 :: 聚合  :: 管理
      74 Posts :: 60 Stories :: 5 Comments :: 0 Trackbacks
    posted on 2007-12-09 17:44 e全 閱讀(98) 評(píng)論(0)  編輯  收藏

    1.String類和StringBuffer類


    它們都是處理字符串的類,但是它們有一個(gè)最大的區(qū)別,那就是,String對(duì)象是存儲(chǔ)你不能改動(dòng)的文本字符串,相反,如果你希望改動(dòng),則應(yīng)使用StringBuffer類作為替換.


    eg1:

       ......

       //omit some code

       String s1="You are hired!";

       System.out.println(s1.replace(h,f));//用f把字串中的h替換了

       System.out.println(s1);

       ......

       //omit some code

       運(yùn)行結(jié)果:

       You are fired!

       You are hired!
       結(jié)果分析:

       從結(jié)果,明顯可知,s1的值并沒(méi)有被改變,而第一行結(jié)果只是屏幕內(nèi)容的替換.

       eg2:

       ......

       //omit some code

       StringBuffer s2=new StringBuffer("Hello from Java!");

       s2.replace(6,10,"to");

       System.out.println(s2);

       ......

       //omit some code


      

    運(yùn)行結(jié)果:

    Hello to Java!

    結(jié)果分析:

    顯然,s2的值已改變.


    2.位邏輯與條件邏輯


    首先聲明, 為了與位邏輯更好區(qū)分開(kāi)來(lái),我把通常所說(shuō)的邏輯取了個(gè)別名叫做條件邏輯.


    它們都有各自的操作符,位邏輯操作符有:&(與運(yùn)算),^(異或運(yùn)算),|(或運(yùn)算);條件邏輯操作符有:&&(并且),||(或者).

    位邏輯運(yùn)算通常是針對(duì)兩個(gè)數(shù)而言,實(shí)行位操作;而條件邏輯運(yùn)算是針對(duì)兩個(gè)條件表達(dá)式而言,實(shí)行條件操作.其實(shí),位邏輯操作符一樣可以實(shí)現(xiàn)條件操作,但是此時(shí)有一個(gè)重要的區(qū)別:用位操作符時(shí),不管操作符兩邊的

    條件表達(dá)式成不成立,它都要通通進(jìn)行運(yùn)算判斷,而條件邏輯操作符不一樣了,如果通過(guò)左側(cè)的操作數(shù)就可以進(jìn)行它們需要的判斷,那么它就不會(huì)再計(jì)算右側(cè)的操作數(shù)了,這種情況叫短路.廢話少說(shuō)!且看下例.


    eg1:

       ......

       //omit some code

       double value=0;

       if(value!=0 && 1/value<1000){

       System.out.println("The value is not too small.");

       }

       else{

       System.out.println("The value is too small.");

       }

       ......

       //omit some code


      

    運(yùn)行結(jié)果:

    The value is too small.

    結(jié)果分析:

    照理說(shuō)應(yīng)會(huì)出現(xiàn)除數(shù)為0的錯(cuò)誤,但是我剛才說(shuō)了,由于條件邏輯操作符是短路操作符,顯然,value!=0不成立,立即就可作出判斷應(yīng)執(zhí)行else后的語(yǔ)句,所以它就不再會(huì)運(yùn)算判斷1/value<1000了.如果不懂請(qǐng)?jiān)倏匆焕?


    eg2:

       ......

       //omit some code

       double int1=0,int2=1,int3=1;

       if(int1!=0 & (int2=2)==1){}

       System.out.println("int2="+int2);

       if(int1!=0 && (int3=2)==1){}

       System.out.println("int3="+int3);

       ......

       //omit some code


    運(yùn)行結(jié)果:

    int2=2.0

    int3=1.0

    結(jié)果分析:

    我想不用我分析了,你應(yīng)該懂了吧.




    3.實(shí)例變量與類變量

    可以通過(guò)兩種方法在類中存儲(chǔ)數(shù)據(jù)───作為實(shí)例變量和類變量.實(shí)例變量是特定于對(duì)象的,如果你有兩個(gè)對(duì)象(即一個(gè)類的兩個(gè)實(shí)例),每一個(gè)對(duì)象中的實(shí)例變量獨(dú)立于另一個(gè)對(duì)象中的實(shí)例變量的;另一方面,兩個(gè)對(duì)象的類變量均指向相同的數(shù)據(jù),并因此面保存相同的值,換句話說(shuō),類變量被類中的所有對(duì)象共享.差點(diǎn)忘了,它們?cè)谛问缴系膮^(qū)別,類變量在聲明時(shí)比實(shí)例變量多一個(gè)static.


    eg:

       class data

       public int intdata=0;//顯然,intdata在這兒是實(shí)例變量

       }

       public class exam

       {

       public static void main(String[] args)

       {

       data a,b;

       a=new data();

       b=new data();

       a.intdata=1;

       System.out.println("b.indata="+b.intdata);

       }

       }


    運(yùn)行結(jié)果:

    b.intdata=0

    結(jié)果分析:

    可以看出,a.intdata的值雖然變了,但并沒(méi)有影響b.intdata.但是如果在data類中聲明intdata時(shí),在其前面加上static就變成類變量了(即:public static int intdata=0;),則此時(shí)運(yùn)行結(jié)果會(huì)變?yōu)?

    b.intdata=1

    這次a.intdata值的改變可把b.intdata影響了,事實(shí)上,對(duì)象a和b的類變量均指向相同的數(shù)據(jù),所有值一樣,這就是類變量的作用.


    4.實(shí)例方法,類方法,構(gòu)造器方法


    我們通常所說(shuō)的方法系指實(shí)例方法,就像c語(yǔ)言中的函數(shù)一樣,其具體方法我就不用說(shuō)了,在這里我主要是用它來(lái)區(qū)分類方法和構(gòu)造器方法.類方法與實(shí)例方法最大的區(qū)別是:在形式上類方法多一個(gè)static,在用法上,不必創(chuàng)建對(duì)象就可直接調(diào)用類方法(而實(shí)例方法卻一定要先創(chuàng)建對(duì)象,再通過(guò)對(duì)象調(diào)用).


    eg:

       class add

       {

       static int addem(int op1,int op2)

       {
       return op1+op2;

       }

       }

       public class xxf

       {

       public static void main(String[] args)

       {

       System.out.println("addem(2,2)="+add.addem(2,2));

       } //直接用類名作為對(duì)象調(diào)用類方法

       }


      

    注: 也可按通常的方法,即先創(chuàng)建對(duì)象,再調(diào)用方法,不過(guò),這時(shí)static就無(wú)任何意義了.


    再說(shuō)說(shuō)構(gòu)造器方法,它是用來(lái)初始化對(duì)象中的數(shù)據(jù)的一種方法,創(chuàng)建很容易,只需在類中加上一個(gè)與這個(gè)類同名的方法,不需要在前面加任何訪問(wèn)說(shuō)明符或者返回類型,另外,構(gòu)造器也一樣可以向方法一樣傳遞參數(shù).


    eg:

      class data

       {

       private String data1;//事先聲明
       data(String s)

       {

       data1=s; /*通過(guò)接收數(shù)據(jù)來(lái)初始化變量.(注:不能在構(gòu)造器內(nèi)

       聲明變量,事先在外就要聲明.)*/

       }

       public String getdata()

       {

       return data1;

       }

       }

       public class xxf

       {

       public static void main(String[] args)

       {

       System.out.println((new data("I love you")).getdata());
    /*通過(guò)傳遞參數(shù)調(diào)用構(gòu)造器新建一個(gè)對(duì)象,再通過(guò)對(duì)象調(diào)用方法得到數(shù)據(jù)*/

       }

       }


    5.接口與類

    類是對(duì)一類特定對(duì)象的規(guī)格說(shuō)明,我們可以類定義創(chuàng)建對(duì)象,通過(guò)創(chuàng)建對(duì)象來(lái)組合所有屬于該類的組件,而接口不能這樣做.而接口實(shí)質(zhì)上就是一個(gè)常量和抽象方法的集合,要使用一個(gè)接口,就需要在類中實(shí)現(xiàn)這個(gè)接口,然后作為類定義的一部分,編寫接口中聲明的每一個(gè)方法,接口中的方法永遠(yuǎn)是public,abstract,接口中的常量永遠(yuǎn)是public static和final,因此不需要為它們說(shuō)明屬性.因?yàn)樵贘ava中不支持多重繼承,但是,可以用接口來(lái)實(shí)現(xiàn)類似的功能,這是接口的重要作用之一.


    eg:

       interface anyone //定義一個(gè)接口

       {

       final double PI=3.1416;

       void setNumber(int number);

       int getNumber();

       }

       interface anyother //定義另一個(gè)接口

       {

       void setString(String str);

       String getString();

       }

       class xxf implement anyone,anyother //定義一個(gè)類,并使用兩個(gè)接口

       {

       int number;

       String str;

       public xxf(){}

       void setNumber(int number)

       {

       this.number=number;

       }

       void setString(String str)

       {

       this.str=str;

       }

       void int getNumber(){}//可以為一個(gè)空實(shí)現(xiàn).

       void String getString(){}

       }


    //在類中必須實(shí)現(xiàn)接口中聲明的所有方法.(當(dāng)然也可不必,但是要用到適配器類或用抽象類)

    只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 亚洲男女内射在线播放| 中国xxxxx高清免费看视频| 国产精品久久香蕉免费播放| 亚洲三级高清免费| 国产免费的野战视频| 亚洲精品国产第1页| 青青青免费国产在线视频小草| 91天堂素人精品系列全集亚洲| 最近免费中文字幕高清大全| 免费国产a理论片| 日韩视频在线免费| 国产偷v国产偷v亚洲高清| 亚洲成A∨人片在线观看无码| 亚洲人成7777| 国产视频精品免费| 精品国产亚洲一区二区三区在线观看 | 午夜高清免费在线观看| 国产成人亚洲综合无码| 国产无限免费观看黄网站| 亚洲av无码不卡一区二区三区| 亚洲av成人一区二区三区观看在线| 在线看片无码永久免费aⅴ| 男人和女人高潮免费网站| 亚洲AV综合色一区二区三区| 四虎最新永久免费视频| 老司机亚洲精品影院在线观看| 国产成人亚洲精品91专区手机| 9277手机在线视频观看免费| 亚洲色偷偷色噜噜狠狠99| 亚洲国产精品国产自在在线| 国产午夜亚洲精品| 亚洲国产精品碰碰| 99视频在线精品免费| 亚洲精品国产成人专区| 成年大片免费视频| 亚洲日本久久久午夜精品| 亚洲男人的天堂在线va拉文| xxxx日本免费| 一本大道一卡二大卡三卡免费| 亚洲精品国产啊女成拍色拍| 免费不卡中文字幕在线|