第二小組

          2005年7月28日 #

          Java 5.0新特性 - 枚舉類型enum

          Java 語言的兩個(gè)基本的元素是類(class)和接口(interface),現(xiàn)在Tiger又引入了枚舉(enum).
          其實(shí)枚舉也不能算是嚴(yán)格意義上的新元素,它也是一種類,是一種特殊的類.所有的枚舉都默認(rèn)繼承自java.lang.Enum,如果所有的類都默認(rèn)繼承自java.lang.Object一樣.在Java提供的枚舉中提供了比C/C++更多的功能,在這里可以像一般的類一樣定義方法和屬性,也可以有受限的構(gòu)造函數(shù)(只能是private,且默認(rèn)如此).

          下面試寫了一個(gè)枚舉,以供參考.

          package kb.enums;

          public enum Temperature 
          {
              VeryHigh(
          100.0),    //!這樣使用構(gòu)造函數(shù)

              High,
              LessComfortable,
              Comfortable(
          25.0),    //構(gòu)造函數(shù)

              MoreComfortable,
              Low,
              VeryLow(
          -15.0);        //構(gòu)造函數(shù)

              
              
          private double
           degree;
              
              Temperature( 
          double d ) 
          {    //private
                  degree = d;
              }

              
              Temperature() 
          {
                  degree 
          = -1.0
          ;
              }

              
              
          public static String getMemberList() {
                  StringBuffer buf 
          = new
           StringBuffer();
                  
                  
          for( Temperature t : Temperature.values() ) 
          {
                      buf.append( t.toString() 
          + "\n"
           );
                  }

                  
                  
          return buf.toString();
              }

          }


          package kb.enums;

          public class UseTemperature 
          {
              
              
          private static StringBuffer out = new
           StringBuffer();
              
              
          public static void main(String[] args) 
          {
                  
                  Temperature temp 
          =
           Temperature.High;
                  
                  
          switch
          ( temp )
                  
          {
                  
          case
           Comfortable:
                      
          out.append( Temperature.Comfortable.toString() + "\n"
           );
                      
          break
          ;
                  
          default
          :
                      
          out.append( "Uncomfortable\n"
           );
                      
          break
          ;
                  }

                  
                  
          out.append( Temperature.getMemberList() );
                  
                  System.
          out.print( out
          .toString() );
              }


          }

          posted @ 2005-07-29 00:20 第二小組 閱讀(3624) | 評(píng)論 (4)編輯 收藏

          復(fù)數(shù)類實(shí)現(xiàn) by freeyun

           

          class  complex
          {
                
          double  real,imag;
                complex ()    
          {}
                complex(
          double  r,double  i)
                     
          {   real=r;
                         imag
          =i;
                     }
           
                complex     addition(complex x,complex   y)
                     
          {   this.real=x.real+y.real;
                         
          this.imag=x.imag+y.imag;
                         
          return(this) ;
                      }


               complex      subtraction(complex x,complex   y)       
                    
          {   this.real=x.real-y.real;
                         
          this.imag=x.imag-y.imag;
                         
          return(this) ;              
                     }


               complex     multiplication(complex x,complex   y)
                    
          {    this.real=(x.real)*(y.real)-(x.imag)*(y.imag);
                         
          this.imag=(x.real)*(y.imag)+(x.imag)*(y.real);
                         
          return(this) ;             
                     }


                complex     division(complex x,complex   y)
                    
          {    this.real=((x.real)*(y.real)+(x.imag)*(y.imag))/((y.real)*(y.real)+(y.imag)*(y.imag));
                         
          this.imag=((x.imag)*(y.real)-(x.real)*(y.imag))/((y.real)*(y.real)+(y.imag)*(y.imag));
                         
          return(this) ;
                    }


          }
                         

          public    class   C
          {  
              
          public  static  void  main(String    args[])
               
          {   
                  complex   c1
          =new  complex(2,4);
                  complex   c2
          =new  complex(4,8);
                  complex   c
          =new   complex();
                   c.addition(c1,c2);
                   System.
          out.println("c=c1(2,4)+c2(4,8)"+" "+c.real+","+c.imag);
                   c.subtraction(c1,c2);
                   System.
          out.println("c=c1(2,4)-c2(4,8)"+" "+c.real+","+c.imag);
                   c.multiplication(c1,c2);
                   System.
          out.println("c=c1(2,4)*c2(4,8)"+" "+c.real+","+c.imag);
                   c.division(c1,c2);
                   System.
          out.println("c=c1(2,4)/c2(4,8)"+" "+c.real+","+c.imag);
                }

          }
           




          name     C.java
          運(yùn)行結(jié)果:c=c1(2,4)+c2(4,8)     6.0 ,12.0
                              c=c1(2,4)-c2(4,8)    -2.0 ,-4.0
                              c=c1(2,4)*c2(4,8)    -24.0,32.0
                              c=c1(2,4)/c2(4,8)      0.5,0.0

          求助:為什么我在函數(shù)中用getReal,getImag分別返回各函數(shù)的實(shí)部和虛部實(shí)現(xiàn)不了?

          posted @ 2005-07-29 00:16 第二小組 閱讀(1029) | 評(píng)論 (2)編輯 收藏

          復(fù)數(shù)類實(shí)現(xiàn) - kb

               摘要: 一共三個(gè)文件:         ComplexException.java   :  Complex類所應(yīng)的異常         Complex.java   : Complex類...  閱讀全文

          posted @ 2005-07-28 22:44 第二小組 閱讀(2064) | 評(píng)論 (6)編輯 收藏

          這幾天進(jìn)度如何啊?

          據(jù)我感覺好像進(jìn)度很慢啊,這么久了連一篇學(xué)習(xí)日記都沒有寫,所以今天我提了個(gè)問題,看看誰做的好些。還有可以的話在后面簡要地說說各位的進(jìn)度如何,老是沒反應(yīng)我就覺得好像都跟我一樣呢

          posted @ 2005-07-28 17:23 第二小組 閱讀(584) | 評(píng)論 (0)編輯 收藏

          編程練習(xí): 自己實(shí)現(xiàn)復(fù)數(shù)類

          要求自己實(shí)現(xiàn)一個(gè)復(fù)數(shù)類,實(shí)現(xiàn)復(fù)數(shù)的各種必須操作以及其它合理的操作,并盡量保證具有易用性和可擴(kuò)展性。盡量設(shè)計(jì)一個(gè)良好的類層次結(jié)構(gòu),有必要的注釋等。
          請(qǐng)?jiān)?月29日早上8點(diǎn)鐘之前將寫好的代碼以新隨筆的形式發(fā)表(注明作者),小組之外的人可以直接跟在此文章后面,并在網(wǎng)站分類中選擇首頁原創(chuàng)Java技術(shù)區(qū),以便讓更多的人評(píng)價(jià)。

          posted @ 2005-07-28 17:10 第二小組 閱讀(1317) | 評(píng)論 (1)編輯 收藏

          主站蜘蛛池模板: 大同市| 融水| 曲松县| 常熟市| 溧阳市| 通山县| 珲春市| 鹿邑县| 兰州市| 连南| 北票市| 巴彦县| 桂林市| 文昌市| 英山县| 广水市| 永吉县| 鹿泉市| 息烽县| 铜川市| 太康县| 阿拉善盟| 离岛区| 永城市| 汾西县| 正安县| 桦南县| 江川县| 满洲里市| 延安市| 博野县| 黄冈市| 榆中县| 西城区| 金乡县| 客服| 车险| 闻喜县| 阿拉善右旗| 红河县| 开远市|