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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 0.00 中级黑马   /  2013-3-2 23:11  /  1578 人查看  /  7 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

class person      
{
        private String name="gande";
        public void getname(String name)
        {
        this.name=name;
        }
        public String setname(String name)
        {
        return this.name=name;
        }
        public void show()
        {
               
        System.out.println(name+"heihei");
        }
}
class mstatic
{
        public static void main(String[]args)
        {
        person p=new person();
  setname("sunxin");
        p.show();
        }
}

谢谢各位

评分

参与人数 1技术分 +1 收起 理由
黄玉昆 + 1

查看全部评分

7 个回复

倒序浏览
setname("sunxin");
前面少东西了,改为:p.setname("sunxin");
回复 使用道具 举报
本帖最后由 黄欢 于 2013-3-2 23:28 编辑
  1. class person      
  2. {
  3.         private String name="gande";
  4.         public String getname()
  5.         {
  6.          return this.name;
  7.         }
  8.         public void setname(String name)
  9.         {
  10.          this.name=name;
  11.         }
  12.         public void show()
  13.         {     
  14.          System.out.println(getname()+"   heihei");
  15.         }
  16. }
  17. class mstatic
  18. {
  19.         public static void main(String[]args)
  20.         {
  21.         person p=new person();
  22.         p.setname("sunxin");
  23.         p.show();
  24.         }
  25. }
复制代码
不过你这样写不好。
回复 使用道具 举报
class person      
{
         private String name="gande";
         public void setname(String name)
         {
         this.name=name;
         }
         public String getname()
         {
         return name;
         }
         public void show()
         {
                 
        System.out.println(this.name+"heihei");
         }
}
class mstatic
{
         public static void main(String[]args)
         {
            person p=new person();
                        p.setname("sunxin");
            p.show();
         }
}
我也是初学者,我知道这样写木问题的。

评分

参与人数 1技术分 +1 收起 理由
黄玉昆 + 1

查看全部评分

回复 使用道具 举报
哥们儿,setName("sunxin")是哪个类实例对象的方法,要告诉编译器啊,p.setName("sunxin")
回复 使用道具 举报
谢谢 各位哈,看了下笔记,发现问题了,
回复 使用道具 举报
写类名的时候首字母大写比较好,比如Person,方法名,第一个单词首字母大写,从第二个单词开始每个单词首字母大写比较好,你写成setName和getName这样命名规范。getName()方法是获取name,一般不需要参数,需要String类型的返回值;setName方法是设置一个属性,需要一个name参数,不需要返回值,应该这样写setName(String name){this.name=name},还有就是在main方法中,方法需要对象调用,setName("sunxin"),应写成p.setName()

评分

参与人数 1技术分 +1 收起 理由
黄玉昆 + 1

查看全部评分

回复 使用道具 举报
setname("sunxin");是一个方法 参数也传入了 但是没有调用,必须得创建该类对象才可以调用 所以你少写了一个p.

如果该方法被static修饰 那么可以不用创建对象,直接用类名调用即可。当然如果方法改成静态的static的之后,方法所要访问的成员变量也要更改,这几个知识点是连贯的 希望对楼主有些帮助。

评分

参与人数 1技术分 +1 收起 理由
黄玉昆 + 1

查看全部评分

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