方法的定义:
在类中定义方法的格式:
<修饰符><返回值类型><方法名>([参数列表])[throws<exception>]
{
方法体;
}
所以一个方法的定义主要包括:方法的方法名,修饰符,返回值类型,参数列表和throws子语句。为了方便理解,本次我们使用以下固定格式定义方法,这种方法称为类方法或静态方法,格式如下:
static<返回值类型><方法名>([参数列表])
{
方法体;
}
注意,方法名的命名规则:以字符(或下划线或货币符号)开头后面只能跟Unicode字符。
JAVA中类的定义:
[类修饰符]class类名[extends父类名][implements接口名]{
Private;//定义类的私有成员
<…>//定义属性及构造函数或其他方法
Protected;//默认定义,定义类的保护成员
<…>//定义属性及构造函数或其他方法
Public;//定义类的公有成员
<…>//定义属性及构造函数或其他方法
…
}
说明:其中方括号[]括起来的标示在类的定义的时候可以选择使用。
类的内部以三种修饰符(private,protected和public)定义属性的方法。
①属性定义的方法:
[修饰符]<变量的数据类型><变量名>[=初始值];
[修饰符]<类名><对象名>[=new<类名>([参数列表])];
类的属性修饰符就是访问控制符,包括static、final、transient和volatile等。
类的属性为一个对象时,定义中的类名一定是另一个已经存在的类,后面的对象就是该类的一个实例。
②方法的定义:
[修饰符]<返回值类型><方法名>([形参说明])[throws异常1,异常2,…]{
局部变量说明;
执行语句组;
}
类方法修饰符也是访问控制符,包括static、final、native和synchronous等。
返回值类型可以是简单的变量,也可是符合对象,如果没有返回值,则用void来描述。
JAVA中类定义的例子:
下面我们就以交通工具和汽车,火车,飞机为例子,来详解这个过程。首先我们先定义交通工具类(Vehicle)
packageexample.code.oo;
publicclassVehicle{
PublicVehicle(){
}
Publicvoiddrive(){
}
}
再定义汽车类(Car)、火车类(Train)、飞机类(Airplane),他们继承自交通工具类(Vehicle)。
packageexample.code.oo;
PublicclassCarextendsVehicleimplementsCloneable{
PublicCar(){
System.out.println(“<—-构造汽车—->”);
}
Publicvoiddrive(){
System.out.println(“<—-驾驶汽车—->”);
}
}
packageexample.code.oo;
PublicclassTrainextendsVehicleimplementsCloneable{
PublicCar(){
System.out.println(“<—-构造火车—->”);
}
Publicvoiddrive(){
System.out.println(“<—-驾驶火车—->”);
}
}
packageexample.code.oo;
PublicclassAirplaneextendsVehicleimplementsCloneable{
PublicCar(){
System.out.println(“<—-构造飞机—->”);
}
Publicvoiddrive(){
System.out.println(“<—-驾驶飞机—->”);
}
}
————————————————————————————下面,我们再来通过一个例子,体会一下类和方法的关系和使用。
class MyDate //日期类定义
{
private int day=1; //属性定义
private int month=1;
private int year=2000;
MyDate(int day,int month,int year){ //构造方法
this.day=day;
this.month=month;
this.year=year;
}
public void print() //这里是输出的方法
{
System.out.println("MyDate is"+day+" "+month+" "+year);
}
}
public class Demo1
{
public static void main(String args[])
{
MyDate today=new MyDate(28,6,1986);
today.print();
}
}通过上面这个例子,我们可以看出,在类里面包括方法,并在主类中测试。———————————————————————————————————————
最后再来说一个比较好玩的例子:
PublicclassCircle{
privatedoubleradius;
privatedoublearea;
finaldoublepi=3.14;
publicvoidsetRadius(doubler){
radius=r;
}
PublicdoublecalculateArea(){
Returnpi*radius*radius;
}
}
首先,我们定义了一个公共类Circle,所以程序的存储文件名应该是Circle.java。在Circle类中,定义了两个私有成员变量radius和area,用来存储圆的半径和面积;定义了一个常量pi,用来存储π的值;定义了一个公共的无返回值的方法setRadius,通过参数r对类成员变量radius赋值;定义了一个公共方法calculateArea,返回值为double类型,代表圆的面积。
一点小小的心得,才疏学浅,若有纰漏,敬请大家指正。
所有的失败,与失去自己的失败比起来,更是微不足道