第二小组

2005年7月29日 #

Java 5.0新特性 - 枚举类型enum

Java 语言的两个基本的元素是类(class)和接口(interface),现在Tiger又引入了枚举(enum).
其实枚举也不能算是严格意义上的新元素,它也是一种类,是一种特殊的类.所有的枚举都默认继承自java.lang.Enum,如果所有的类都默认继承自java.lang.Object一样.在Java提供的枚举中提供了比C/C++更多的功能,在这里可以像一般的类一样定义方法和属性,也可以有受限的构造函数(只能是private,且默认如此).

下面试写了一个枚举,以供参考.

package kb.enums;

public enum Temperature 
{
    VeryHigh(
100.0),    //!这样使用构造函数

    High,
    LessComfortable,
    Comfortable(
25.0),    //构造函数

    MoreComfortable,
    Low,
    VeryLow(
-15.0);        //构造函数

    
    
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 第二小组 阅读(3586) | 评论 (4)编辑 收藏

复数类实现 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
运行结果: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

求助:为什么我在函数中用getReal,getImag分别返回各函数的实部和虚部实现不了?

posted @ 2005-07-29 00:16 第二小组 阅读(988) | 评论 (2)编辑 收藏

2005年7月28日 #

复数类实现 - kb

     摘要: 一共三个文件:         ComplexException.java   :  Complex类所应的异常         Complex.java   : Complex类...  阅读全文

posted @ 2005-07-28 22:44 第二小组 阅读(2031) | 评论 (6)编辑 收藏

这几天进度如何啊?

据我感觉好像进度很慢啊,这么久了连一篇学习日记都没有写,所以今天我提了个问题,看看谁做的好些。还有可以的话在后面简要地说说各位的进度如何,老是没反应我就觉得好像都跟我一样呢

posted @ 2005-07-28 17:23 第二小组 阅读(561) | 评论 (0)编辑 收藏

编程练习: 自己实现复数类

要求自己实现一个复数类,实现复数的各种必须操作以及其它合理的操作,并尽量保证具有易用性和可扩展性。尽量设计一个良好的类层次结构,有必要的注释等。
请在7月29日早上8点钟之前将写好的代码以新随笔的形式发表(注明作者),小组之外的人可以直接跟在此文章后面,并在网站分类中选择首页原创Java技术区,以便让更多的人评价。

posted @ 2005-07-28 17:10 第二小组 阅读(1281) | 评论 (1)编辑 收藏

2005年7月26日 #

电子书

看电子图书看的人头晕晕的,还是书看起来比较舒服。这么快就26号了,感觉好像什么都没做。

posted @ 2005-07-26 21:43 第二小组 阅读(240) | 评论 (0)编辑 收藏

2005年7月25日 #

MVC框架

MVC是一种设计模式,用在WEB框架中,使我们有效的对WEB层进行再分层:VIEW+ACTION
struts,webwork都是MVC框架,而webwork更是灵活优雅,令人赞叹!
熟悉MVC和接受MVC的人也越来越多。无需多说,Jacker也拥抱MVC;

看来MVC确实是很不错啊,但我还没学呢;-)呵呵,以后再谈自己对MVC的感受吧。

posted @ 2005-07-25 07:27 第二小组 阅读(287) | 评论 (0)编辑 收藏

我们小组在这里安家了!

这儿是个很不错的学习Java的事环境啊,有很多的文章可看,也有很多的人可以交流。欢迎其它小组成员以及其它该博客中有兴趣的朋友参与进我们的学习交流之中。
大家在这儿要活跃一点,发表文章及问题时要有点把握,以便吸引更多的人参与进来。

posted @ 2005-07-25 06:36 第二小组 阅读(273) | 评论 (1)编辑 收藏

仅列出标题