A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

在定义一个类中 成员变量和成员方法有什么区别啊

12 个回复

倒序浏览
方法或语句块内部定义的变量为局部变量,作用域为方法或语句块的大括号内,出了方法或语句的大括号,无人认识他。方法外部类的内部定义的变量为成员变量,作用域为类的大括号内,出了大括号没人认识他。

评分

参与人数 1技术分 +1 收起 理由
admin + 1

查看全部评分

回复 使用道具 举报
1答:成员变量的作用域是在整个类都有效,在该类中的任何方法都可以使用该成员变量,局部变量是定义在方法里的,作用域也是在该方法内有效,出该方法以外无效。
2答:成员方法跟构造方法是有区别的,构造方法是构造方法:没有返回值(连void也没有),与类名同名。成员方法:必须有返回值,空返回就是void。
还有成员方法是类内的方法,方法名不能与类名相同,根据它的访问修饰符决定是否可被外部调用。

评分

参与人数 1技术分 +1 收起 理由
admin + 1

查看全部评分

回复 使用道具 举报
说通俗点吧:变量就是数学中的未知数,当初始化时,才变为一个实际的对象,就是一个具体的事物。比如定义了一个人(person),但是人很多不知道是谁,但是你给他初始化new person=lisi,这个lisi就是实例对象。成员方法就是除构造方法以外的方法,构造方法就是方法名和类名一样。

评分

参与人数 1技术分 +1 收起 理由
admin + 1

查看全部评分

回复 使用道具 举报
成员变量在作用域上是整个类,成员方法分很多尤其是构造方法(对成员变量进行初始化可以时默认初始化,也可以通过创建对象传递参数进行赋值初始化)。在存在的实际意义上,没有成员变量类没有什么特殊的识别和特点;如果有了成员变量没有成员方法进行操作,会使整个类没有意义。举个小例子:比如定义一个学生类含有成员变量:姓名,年龄等,成员方法:setStudent(name,age),构造方法:Student(name,age)。在主函数中进行定义时,创建Student对象然后通过调用方法可以赋给该对象一个默认初始值,当调用setStudent(name,age)时就可以使创建的对象更加贴切,咱们可以任意赋值。
回复 使用道具 举报
魏腾飞 发表于 2012-1-16 10:06
成员变量在作用域上是整个类,成员方法分很多尤其是构造方法(对成员变量进行初始化可以时默认初始化,也可 ...

private String stuNo;

private String stuName;

private String stuAge;
那stuNo  stuName stuAge 是成员变量吗
public String getStuAge() {
                return stuAge;
        }

那getStuAge就是成员方法了吗 成员方法就是函数吗 成员方法后面一般加个小括号 在加个大括号吗 那什么是构造方法呢
回复 使用道具 举报
任奇 黑马帝 2012-1-16 15:11:20
7#
class Demo
{
        int a; //成员变量
        public void show(){} //一般的成员方法
           Demo(){} //构造方法
}
成员变量:表示类的属性
成员方法:数据的操作的定义。
成员方法分为 :构造方法和一般的成员方法
方法具有返回值,访问权限,参数列表等,而成员变量可以具有类型修饰符(int,double.....)和访问修饰符 (public,private.......)
两者合有明显的差别的。

评分

参与人数 1技术分 +1 收起 理由
admin + 1

查看全部评分

回复 使用道具 举报
魏腾飞 黑马帝 2012-1-16 18:07:55
8#
本帖最后由 魏腾飞 于 2012-1-16 18:08 编辑
沙漠里的小鱼 发表于 2012-1-16 14:17
private String stuNo;

private String stuName;


getStuAge是成员方法,也就是函数。通常情况下将函数称为方法,
方法定义格式:
修饰符  返回值类型  方法名()
{
  对成员变量的操作等等语句块;
}
构造方法也是函数也是最特殊的函数。例如:
class Student
{
    private String stuNo;
    private String stuName;
    private String stuAge;
/*这里存在一个默认构造方法:
   Studeng()
  {}
  对成员变量初始化。*/
    public String getStuAge() {
                return stuAge;
    }
/*咱们也可以自己根据自己需要重载构造方法进行赋值:
public void Student(String stuNo,String stuName)
{
   this.stuNo = stuNo;
  this.stuName = stuName;
}
*/
}

你看看我解释,如有不对或疑问可以相互指正!!!

评分

参与人数 1技术分 +1 收起 理由
admin + 1

查看全部评分

回复 使用道具 举报
袁野 黑马帝 2012-1-17 15:35:54
9#
每个对象都有属性和方法 定义在类里的方法和属性 作用整个类 没什么好解释的

评分

参与人数 1黑马币 +1 收起 理由
admin + 1

查看全部评分

回复 使用道具 举报
区别就是一个是变量,一个是方法。具体区别就在于变量和方法的区别。

评分

参与人数 1黑马币 +1 收起 理由
admin + 1

查看全部评分

回复 使用道具 举报
java中变量分为成员变量和局部变量。
        方法分为:成员方法和构造方法。
        成员变量就是对象,成员方法就是对象的方法。
打个比方更形象:比如第一一个person类(也就是人啊),这个person中比如有P这个变量,代表人中的一人。但是不知道具体是谁!但是人都会吃饭吧!我们定义个lanuch()方法,这个就是成员方法,是每个人都具有的。方法强调动作也就是人吃饭,但是你不知道具体是谁!而这个吃饭的人就是成员变量。但是我又不认识他!


希望这样的回答能帮助你,兄弟!这个是我个人理解,如有错误请指明,大家共同学习下!

   谢谢!

评分

参与人数 1技术分 +1 收起 理由
admin + 1

查看全部评分

回复 使用道具 举报
楼主你好, 这个基础性的问题之前我也考虑过很久...
我是这样想的:你可以先不想java,你就想想生活中的例子吧,就比如一个人吧,人有身高,体重,年龄这些东西吧,另外人也可以吃饭啊,睡觉啊等,,,    而java就是根据生活中的事物映射到java里面去的,身高,体重,年龄这些属性,就成为了java类中的成员变量, 睡觉吃饭遍就成了类里面的方法啊,,  

这样理解的话  就可以想明白了....   

评分

参与人数 1技术分 +1 收起 理由
admin + 1

查看全部评分

回复 使用道具 举报
好!!!!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马