请选择 进入手机版 | 继续访问电脑版
查看: 1159|回复: 2

[编程类] java实例,有些函数不是很清楚,求大神解答。

[复制链接]
  • TA的每日心情
    奋斗
    2016-1-24 12:42
  • 签到天数: 2 天

    [LV.1]初来乍到

    发表于 2016-1-23 14:54:01 | 显示全部楼层 |阅读模式
    public class ParamPass{
    static class Object1{
    public String QQ="小猫";

    }
    static void paramChange(int x,Object1 obj1){
    x=18;
    obj1.QQ="小狗";
    }
    public static void main(String args[]){
    int x=28;
    Object1 obj1=new Object1();
    System.out.println("传递前的参数值:x="+x+"QQ="+obj1.QQ);
    ParamPass.paramChange(x,obj1);
    System.out.println("传递后的参数值:x="+x+" QQ="+obj1.QQ);
    }
    }

    第一步 先跑 public static void main(String args[]){
    int x=28;

    第二步 public class ParamPass{
    static class Object1{
    public String QQ="小猫";

    第三步 static void paramChange(int x,Object1 obj1){
    x=18;
    obj1.QQ="小狗";
    }

    大神可以解释下,这样子对吗
    回复

    使用道具 举报

  • TA的每日心情
    无聊
    2020-8-11 18:49
  • 签到天数: 322 天

    [LV.8]以坛为家I

    发表于 2016-1-23 16:19:01 | 显示全部楼层
    不是的,首先你要看的是主方法:public static void main(String args[]),
    然后看定义了什么变量:int x=28;
    接下来new出一个对象obj1:Object1 obj1=new Object1();
    分析类描述的对象细节:
    static class Object1{
    public String QQ="小猫";

    }
    static void paramChange(int x,Object1 obj1){
    x=18;
    obj1.QQ="小狗";
    }
    最后调用对象:
    System.out.println("传递前的参数值:x="+x+"QQ="+obj1.QQ);
    ParamPass.paramChange(x,obj1);
    System.out.println("传递后的参数值:x="+x+" QQ="+obj1.QQ);

    咳咳, 刚学,希望对你有帮助。
    你说的第一步第二步,这是面向过程的思想,
    其实上面的的面向对象的,也有面向过程的影子
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2016-1-24 12:42
  • 签到天数: 2 天

    [LV.1]初来乍到

     楼主| 发表于 2016-1-23 16:22:15 | 显示全部楼层
    谢啦
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    快速回复 返回顶部 返回列表