黑马程序员技术交流社区

标题: 面向对象 [打印本页]

作者: liwenbin0912    时间: 2014-7-13 20:40
标题: 面向对象
/* 请自己描述手机这个类型的事物,定义出类并创建对象,
        最终还要使用对象的属性,调用对象的方法。

        分析手机
                属性:品牌、价格、颜色...
                行为:打电话、发短信、玩游戏
       
        转换成java中的类:
                手机类:
                成员变量:品牌、价格、颜色...
                成员方法:打电话、发短信、玩游戏
*/
class Phone
{
        String brand;
        int price;
        String color;

        public void call(String name)
        {
                System.out.println(name+"拿着"+price+"元的"+color+"手机给林青霞打电话");
        }
        public void sendMessage()
        {
                System.out.println("林青霞给刘意老师发信息");
        }
        public String playGame()
        {
                System.out.println("叨塔是一种很受欢迎的游戏");
                        return  "林青霞也喜欢玩";
        }
}
class PhoneTest
{
        public static void main(String[] args)
        {
                Phone p = new Phone();
                p.brand = "苹果";
                p.price = 5200;
                p.color = "土豪金";
                System.out.println("我想要"+p.brand+p.price+p.color+"的手机");
                p.call("刘意");
                p.sendMessage();
                String s = p.playGame();1
                System.out.println(s);1
                P.playGame();2
                //问题点:上边的两种调用playGame的方式上边能正常输出执行体和return语句;1
                //:而下边那个调用只输出执行体不执行return内容,2
                //:疑问: 区别是什么?

        }
}

作者: w306752855    时间: 2014-7-13 21:33
貌似没啥区别吧,只是你把第一个的返回值赋用一个字符串对象保存起来然后进行了输出而已!第二个没进行输出当然不会将返回值打印出来!
作者: blue_sky    时间: 2014-7-14 11:21
楼上正解……
作者: huangqili    时间: 2014-7-14 11:24
支持。。。。。
作者: 西地那非    时间: 2014-7-14 11:32
1L正解。。。
作者: IT初学者    时间: 2014-7-14 11:44
1L正解,因为你妹有打印,只是return了字符串,但你没有使用,当然就没输出
作者: 嗅ㄨiaǒ孑    时间: 2014-7-14 12:10
一楼说的很对啊     第二个你没输出
作者: liwenbin0912    时间: 2014-7-14 22:50
w306752855 发表于 2014-7-13 21:33
貌似没啥区别吧,只是你把第一个的返回值赋用一个字符串对象保存起来然后进行了输出而已!第二个没进行输出 ...

呵呵  昨晚上好像脑子有点蒙,    发出去了  自己就想到了.   但无论如何还是谢谢你




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2