系统粉 > 电脑问答 > 其他问答

已解决对象调用的问题(Java)

提问者:________刺心丶  |  浏览次  |  提问时间:2017-01-30  |  回答数量:9

对象调用的问题(Java) 看这个程序:class XiyoujiRenwu{float height, weight; String head, ear, hand, foot, mouth; void speak(String s) { head=\"歪着头\"; System.out.println(s); }}class Example{ public static void main(String args[]) { XiyoujiRenwu Zhubajie, Sunwukong; Zhubajie = new XiyoujiRenwu; Sunwukong = new XiyoujiRenwu; Zhubajie.head = \" 大头 \"; System.out.println(\"Zhubajie的头 :\"+Zhubajie.head); ..........“1” Zhubajie.speak(\"我想娶媳妇\"); System.out.println(\"Zhubajie现在的头:\"+Zhubajie.head); ..........“2”}}运行的结果是:Zhubajie的头

已有9条答案
赛半仙大本营

赛半仙大本营

回答数:141  |  被采纳数:52

你这个程序可以运行吗?
我一眼就看出错误来了

没有publicclass
Zhubajie = new XiyoujiRenwu; 这是什么东西?
2017-01-30 14:01:46
赞 14
珩—殤

珩—殤

回答数:145  |  被采纳数:57

正规的代码 应该是这样的
class XiyoujiRenwu {
float height, weight;
String head, ear, hand, foot, mouth;

public void speak(String s) {
head="歪着头";
System.out.println(s);
}
}

public class Example {
public static void main(String args[]) {
XiyoujiRenwu Zhubajie, Sunwukong;
Zhubajie = new XiyoujiRenwu();
Sunwukong = new XiyoujiRenwu();
Zhubajie.head = " 大头 ";
System.out.println("Zhubajie的头 :"+Zhubajie.head);
Zhubajie.speak("我想娶媳妇");
System.out.println("Zhubajie现在的头:"+Zhubajie.head);
}
}

少了public的话 编译器也可以寻址的到 那个class是主的 但要通过main函数去寻找 这样 在内部运行的效率不高而已!
2017-01-30 18:15:59
赞 14
艹xxoofly

艹xxoofly

回答数:90  |  被采纳数:78


书上的例题中就没有publicclass
Zhubajie = new XiyoujiRenwu; 难道不是为对象分配内存吗?

书上的例子比较长,我省了一些,但没有省一个类! 省的全是Example类中的语句

我试着运行了下 出了2个错误:
(1)
2017-01-30 19:50:58
赞 9
大蟀神

大蟀神

回答数:34  |  被采纳数:38

解答:
Zhubajie.head = " 大头 ";
程序执行到这句话的时候 就给XiyoujiRenwu 类中的head自定义了
接着马上输出语句System.out.println("Zhubajie的头 :"+Zhubajie.head);
所以就出大头了

程序继续执行到Zhubajie.speak("我想娶媳妇");这句的时候 看回speak方法中
有个head="歪着头"; 因此当执行speak完毕后 做了两个事件第一先给head定义为“歪着头”
再输出“我想娶媳妇”

程序最后再执行输出 System.out.println("Zhubajie现在的头:"+Zhubajie.head);
当然 就是之前speak完毕后 做出的事件值咯 “歪着头”
2017-01-30 14:08:49
赞 3
违心mmmmmmm

违心mmmmmmm

回答数:35  |  被采纳数:38



你按照我写给你的代码去运行就可以了 !
定义类的对象 是有括号的
Zhubajie = new XiyoujiRenwu ( );是这样
而不是
Zhubajie = new XiyoujiRenwu; 这样
2017-01-30 14:12:50
赞 3
总是_被寂寞

总是_被寂寞

回答数:171  |  被采纳数:85

neo_pang :

你改的程序也有误,我运行了下,错误显示和我在3楼发的贴子是一样的
2017-01-31 02:35:13
赞 17
love_浅蓝浠

love_浅蓝浠

回答数:90  |  被采纳数:27

定义类的对象 分配内存
实际上是调用类中的缺省构造函数的!
当你定义好 这个类class XiyoujiRenwu { .... }
后 就会默认的 有个构造函数
public XiyoujiRenwu ( ){....}
只是没写出来而已

定义对象 都是调用类的这个构造函数 当然 你也可以自己定义带有参数的构造函数!
所以 函数是有括号在后面的 别忘记了!
2017-01-30 16:45:32
赞 9
似水柔情丶h

似水柔情丶h

回答数:81  |  被采纳数:32

我的代码 没有错的!!!
我运行过了以后 才发上去的!
主要 的是你的编译器 输入的问题!
你看错误的提示就知道了
这些 分号 中括号 小括号 大括号的符号
应该是在全英文的状态下输入!
你先调整过你电脑上的输入法 了再写代码吧!
2017-01-31 00:23:37
赞 8
一场_不切实际_

一场_不切实际_

回答数:145  |  被采纳数:121

而且还有一个很严重的错误 很低级的错误 也是很重要的错误!

你应该是javac Example.java文件的
因为你的main函数 是定义在Example这个类当中
因此Example这个类才是共有主类!
而且保存的文件名应该是 Example.java这样
然后在dos下运行
javac Example.java
java Example

即可!
2017-01-30 15:58:25
赞 14
相关问答
最新其他问答
解决方法