黑马程序员技术交流社区
标题:
在一个类中,只能方法调用方法而不能函数调用方法吗?:
[打印本页]
作者:
杨康
时间:
2012-5-17 18:40
标题:
在一个类中,只能方法调用方法而不能函数调用方法吗?:
本帖最后由 杨康 于 2012-5-17 18:57 编辑
如题,拿下面的例子说:
定义一个Person类
QQ截图20060110092905.png
(32.78 KB, 下载次数: 226)
下载附件
2012-5-17 18:47 上传
请问为什么函数中不能调用方法呢?
追问下,在一个类中,成员变量就是属性,成员行为就是方法,那定义在类中的函数跟方法有什么区别于联系?
作者:
冯越
时间:
2012-5-17 18:43
在java里 函数就是方法啊 亲~
作者:
田林
时间:
2012-5-17 19:09
首先明确一下:java中方法和函数是一个概念。并且你上面的代码完全可以执行,下面试测试代码:
public class MethodTest {
public static void main(String[] args) {
Person p=new Person("zhangsan",25);
p.speak();
}
}
class Person{
int age;
String name;
Person(String name){
this.name=name;
}
Person(String name,int age){
this.name =name;
this.age=age;
show();
}
public void speak(){
System.out.println("name="+this.name+"....age="+age);
this.show();
}
public void show(){
System.out.println(this.name);
}
}
作者:
我能驾驭住
时间:
2012-5-17 20:27
大哥,我用简单直白给你解释啊
首先方法和函数是一个概念,就是给来调用的
你的程序定义一个Person类,下面前两个是构造函数(和类名同名的函数),它是给对象初始化的
后面两个方法,就是普通的方法!
它两个最大的区别是:一个对象建立构造函数只运行一次,而一般方法可以被对象调用多次!
不知道我这么直白,你明白否,希望帮到你!
作者:
李保成
时间:
2012-5-17 23:04
呵呵 描述的是一个事物,不过是两种叫法,就好像是你在家的时候父母会喊你的乳名,在学校的时候同学会喊你大名或者是外号等。
首先看了下你的代码标识,有两处需要明确一下,第一处this关键字是做什么用的,它为什么会出现,第二处是构造函数。
那么明确一,this关键字它代表的是对象的引用,它的出现一般是为了区分类中的成员与局部的变量如果出现重名情况,可以使用this来调用。
明确二,构造函数,这个主要是用来给对象初始化的。在构造函数中可以调用本类中的成员属性或者方法,也可以给成员属性赋值,如果成员属性与构造函数中的参数出现重名,需要使用this来区分。
作者:
8161776
时间:
2012-5-18 23:54
你Person()很明显是构造方法了,在构造方法是不能调用这个类里的普通方法的,因为构造方法是在new 对象的时候调用的,那时候还没有这个对象怎么能用this调用他的方法呢?下面的speak()是普通方法,当然可以调用其他的普通方法了
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2