Java成员变量和成员方法

原创 2016年05月31日 08:59:13

成员变量

成员变量是指类的一些属性定义,标志类的静态特征,它的基本格式如下:
    访问修饰符 修饰符 类型 属性名称=初始值;
  • 访问修饰符:可以使用四种不同的访问修饰符中的一种,包括public(公共的)、protected(受保护的),无修饰符和 private(私有的)。public 访问修饰符表示属性可以从任何其它代码调用。private 表示属性只可以由该类中的其它方法来调用。protected 将在以后的课程中讨论。
  • 修饰符:是对属性特性的描述,例如后面会学习到的:static、final 等等。
  • 类型:属性的数据类型,可以是任意的类型。
  • 属性名称:任何合法标识符
  • 初始值:赋值给属性的初始值。如果不设置,那么会自动进行初始化,基本类型使用缺省值,对象类型自动初始化为 null。

成员变量有时候也被称为属性、实例变量、域,它们经常被互换使用。

成员方法

成员方法就是对象所具有的动态功能。Java 类中方法的声明采用以下格式:
    访问修饰符 修饰符 返回值类型 方法名称 (参数列表) throws 异常列表 {方法体}
  • 访问修饰符 : 可以使用四种不同的访问修饰符中的一种,包括public、 protected、无修饰符和 private。public 访问修饰符表示方法可以从任何其它代码调用。private表示方法只可以由该类中的其它方法来调用。protected 将在以后的课程中讨论。
  • 修饰符:是对方法特性的描述,例如后面会学习到的:static、final、abstract、synchronized 等等。
  • 返回值类型:表示方法返回值的类型。如果方法不返回任何值,它必须声明为 void(空)。Java 技术对返回值是很严格的,例如,如果声明某方法返回一个int值,那么方法必须从所有可能的返回路径中返回一个int值(只能在等待返回该 int 值的上下文中被调用。)
  • 方法名称:可以是任何合法标识符,并带有用已经使用的名称为基础的某些限制条件。
  • 参数列表:允许将参数值传递到方法中。列举的元素由逗号分开,而每一个元素包含一个类型和一个标识符。在下面的方法中只有一个形式参数,用 int 类型和标识符 days 来声明:
        public void test(int days){}
  • throws 异常列表:子句导致一个运行时错误(异常)被报告到调用的方法中,以便以合适的方式处理它。异常在后面的课程中介绍。
  • 花括号内是方法体,即方法的具体语句序列。

示例:比如现在有一个“车”的类——Car,“车”具有一些基本的属性,比如四个轮子,一个方向盘,车的品牌等等。当然,车也具有自己的功能,也就是方法,比如车能够“开动”——run。
要想车子能够开动,需要给车子添加汽油,也就是说,需要为run方法传递一些参数“油”进去。
车子就可以跑起来,这些油可以供行驶多少公里?就需要run方法具有返回值“行驶里程数”。

package net.weixueyuan.www.javatest;
public class Car {// 车这个类
    private String make;// 一个车的品牌
    private int tyre;// 一个车具有轮胎的个数
    private int wheel;// 一个车具有方向盘的个数
    public Car() {
        // 初始化属性
        make = "BMW";// 车的品牌是宝马
        tyre = 4;// 一个车具有4个轮胎
        wheel = 1;// 一个车具有一个方向盘
    }
    /**
    * 车这个对象所具有的功能,能够开动
    *
    * @param oil 为车辆加汽油的数量
    * @return 车辆行驶的公里数
    */
    public double run(int oil) {
        // 进行具体的功能处理
        return 100*oil/8;
    }
    public static void main(String[] args){
        Car c=new Car();
        double mileage=c.run(100);
        System.out.println("行驶了 "+mileage+" 公里");
    }
}
main方法是一个特殊的方法,如果按照public static void main(String[] args)的格式写,它就是一个类的入口方法,也叫主函数。当这个类被java指令执行的时候,首先执行的是main方法,如果一个类没有入口方法,就不能使用java指令执行它,但可以通过其他的方法调用它。

这里,注意一下形参和实参的区别:
  • 形参:就是形式参数的意思。是在定义方法名的时候使用的参数,用来标识方法接收的参数类型,在调用该方法时传入。
  • 实参:就是实际参数的意思。是在调用方法时传递给该方法的实际参数。

比如:上面的例子中“int oil”就是个形式参数,这里只是表示需要加入汽油,这个方法才能正常运行,但具体加入多少,要到真正使用的时候,也就是调用这个方法的时候才具体确定,加入调用的时候传入“100”,这就是个实际参数。

形参和实参有如下基本规则:
  • 形参和实参的类型必须要一致,或者要符合隐含转换规则
  • 形参类型不是引用类型时,在调用该方法时,是按值传递的。在该方法运行时, 形参和实参是不同的变量,它们在内存中位于不同的位置,形参将实参的值复制一份,在该方法运行结束的时候形参被释放,而实参内容不会改变。
  • 形参类型是引用类型时,在调用该方法时,是按引用传递的。运行时,传给方法的是实参的地址,在方法体内部使用的也是实参的地址,即使用的就是实参本身对应的内存空间。所以在函数体内部可以改变实参的值。
版权声明:本文为芝麻软件工作室原创文章,未经芝麻软件工作室允许不得转载。

相关文章推荐

java 成员变量与方法 习题

  • 2010年12月07日 22:02
  • 38KB
  • 下载

java中的类修饰符、成员变量修饰符、方法修饰符。

类修饰符:public(访问控制符),将一个类声明为公共类,他可以被任何对象访问,一个程序的主类必须是公共类。abstract,将一个类声明为抽象类,没有实现的方法,需要子类提供方法实现。final,...

VC++结构体成员变量和方法

  • 2015年04月25日 16:39
  • 3.58MB
  • 下载

Java static修饰成员变量

  • 2017年04月24日 22:15
  • 4KB
  • 下载

java反射的应用 构造方法 成员变量

原文:http://blognojava.iteye.com/blog/799068     由于有了神奇的Class的,基本反射也就是利用这个资源搞一搞,但是功能却很吓人....很多不好理解,...

Java中的成员变量

  • 2015年10月11日 18:04
  • 43KB
  • 下载

Java基础知识_day07_(面向对象,构造方法,封装,成员变量与局部变量)

面向对象思想 面向对象特性-封装 构造方法 类名作为形式参数及返回值

java成员变量覆盖问题

  • 2012年02月15日 15:53
  • 23KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Java成员变量和成员方法
举报原因:
原因补充:

(最多只允许输入30个字)