以一个实例来展开吧:
Main.java:
public class Main
{
public static void main(String[] args)
{
int totalnu;
Die die1 = new Die();
Die die2 = new Die();
die1.rotate();
die2.rotate();
totalnu=die1.getFaceValue() + die2.getFaceValue();
System.out.println("The total number is "+ totalnu);
}
}
Die.java:
import java.util.Random;
public class Die
{
private int faceValue;
private Random radnu = new Random();
public Die()
{
faceValue=1;
}
public int rotate()
{
faceValue = radnu.nextInt(6)+1;
return faceValue;
}
public int getFaceValue()
{
return faceValue;
}
}
按照面向对象编程的思想,类应该代表了有合理的状态和行为的对象,比如,这个例子中,骰子一定有一个向上的面,一个Die对象也有几种描述其行为的方法。
Public Die()是Die类的构造方法,这种方法比较特殊,方法名必须与类名相同。当使用new 运算符创建一个新的Die类实例时,将调用Die构造方法。构造方法不能有返回值,其方法声明中绝对不能指定返回值,否则可能出现一些奇怪的错误。此外,不一定要为每个类创建构造方法。java会自动创建默认构造方法,不过一般不会影响创建的对象的内容。
Die类中的其他方法定义了由Die对象提供的各种服务。
一般类中的方法都应该在文档头部注释说明。
面向对象程序设计的一个重要特性就是封装。这个类中,通过使用修饰符让类之外的代码无法访问或改变类内部声明的变量,就是封装。对于类的使用者来说,类只提供了接口,而它也只需关心接口的用法和使用目的,无须知道类是如何实现的。
一般,类常常提供一些用于访问和修改实例的方法。类似于这个程序的getFaceValue的方法被称作访问器(accessor)方法,这种方法只读的访问实例数据。另外还有可能提供一些用于修改实例数据的方法,称作修改器(mutator)方法。这个程序不需要修改器。这里介绍这个的目的在于,一般我们构建这些方法的时候有一定的的命名惯例,例如,本例若有修改器则名为setFaceValue。
2008-07-19
创建自己的类
订阅:
博文评论 (Atom)
没有评论:
发表评论