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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

程序如下
package ye;

public class Ye_9 {
    //使用private 修饰成员的变量,将这些成员变量隐藏起来;
    private String name;
    private int age;
    //提供方法来操作name成员变量
    public void setName(String name){
        if(name.length()>6||name.length()<2){
            System.out.println("您设置的人名不符合要求");
            return;
        }
        else{this.name=name;}
    }
    public String getName(){
        return this.name ;
    }
    //提供方法来操作age成员变量
    public void setAge(int age){
        if(age>100||age<0){
            System.out.println("您输入 的年龄不符合要求");
            return;
        }
        else{this.age=age;}
        
    }
    public int getAge(){
        return this.age ;
    }

}
//我在这里定义了一个Ye_9的类,但往下想用这个类的时候就报错了~是怎么回事?
public class Ye_9Test{
    public static void main(String[] args){
        Ye_9 p=new Ye_9;
        p.setName("yeyanxi");
    }
}


17 个回复

倒序浏览
敢问少侠是在什么里边写的这段代码?
回复 使用道具 举报
把上面那个类的public 关键字去掉就OK
回复 使用道具 举报
fecuznmn 发表于 2015-5-30 22:54
敢问少侠是在什么里边写的这段代码?

我想的是,先定义一个类,然后main函数调用这个类~~~~大神你能帮我理一下在哪里插入这个main函数吗
回复 使用道具 举报
Ye_9 p=new Ye_9;这句话错了。
正确:Ye_9 p=new Ye_9();
后面要加上括号。
回复 使用道具 举报
零点Crazy 发表于 2015-5-30 22:59
Ye_9 p=new Ye_9;这句话错了。
正确:Ye_9 p=new Ye_9();
后面要加上括号。

哦哦~~这样改掉之后又提示得去掉static ,main函数不都是得static 修饰的吗?
回复 使用道具 举报
程序缘 发表于 2015-5-30 22:57
把上面那个类的public 关键字去掉就OK

这个不影响吧~~~我去掉了还是不行啊
回复 使用道具 举报
唐海 中级黑马 2015-5-30 23:10:02
8#
1 创建对象时少写了一对括号,
1 你要是在一个java文件写的 只能有一个类 public修饰
回复 使用道具 举报
唐海 发表于 2015-5-30 23:10
1 创建对象时少写了一对括号,
1 你要是在一个java文件写的 只能有一个类 public修饰 ...

你说这两个第一个我明白了~~~但第二个不懂,我已经把前边那个public 去掉了~~但还是类似的提示啊
回复 使用道具 举报
一个.java文件只有一个类是public,你的两个类都是public ,所以报错
回复 使用道具 举报
我刚才运行了一下,没问题,你把  public void setAge(int age){
        if(age>100||age<0){
            System.out.println("您输入 的年龄不符合要求");
            return;
        }
return删了,你是void型,不需要返回
回复 使用道具 举报
叶燕希 发表于 2015-5-30 23:12
你说这两个第一个我明白了~~~但第二个不懂,我已经把前边那个public 去掉了~~但还是类似的提示啊 ...

恩,对 :handshake
回复 使用道具 举报
public class Ye_9Test{
        public static void main(String[] args){
                class Ye_9{
                        void setName(String name){
                                System.out.println(name);
                        }
                }
                Ye_9 p =new Ye_9();
               
                p.setName("yeyanxi");
          
        }

}
比这我这个改改呢?
回复 使用道具 举报
  1. class Ye_9
  2. {
  3.     //使用private 修饰成员的变量,将这些成员变量隐藏起来;
  4.     private String name;
  5.     private int age;
  6.     //提供方法来操作name成员变量
  7.     public void setName(String name){
  8.         if(name.length()>6||name.length()<0){
  9.             System.out.println("您设置的人名不符合要求");
  10.             return;
  11.         }
  12.         else{this.name=name;}
  13.     }
  14.     public String getName(){
  15.         return this.name ;
  16.     }
  17.     //提供方法来操作age成员变量
  18.     public void setAge(int age){
  19.         if(age>100||age<0){
  20.             System.out.println("您输入 的年龄不符合要求");
  21.             return;
  22.         }
  23.         else{this.age=age;}
  24.         
  25.     }
  26.     public int getAge(){
  27.         return this.age ;
  28.     }

  29. }
  30. //我在这里定义了一个Ye_9的类,但往下想用这个类的时候就报错了~是怎么回事?
  31. class Ye_9Test
  32.         {
  33.    public  static void main(String[] args)
  34.                 {
  35.         Ye_9 p= new Ye_9();
  36.         p.setName("张三");
  37.                 p.setAge(18);
  38.                 System.out.println("我叫"+p.getName()+",今年"+p.getAge()+"岁了");
  39.         }
  40. }
复制代码
运行成功了 你看一下

QQ图片20150531003336.png (1.22 KB, 下载次数: 1)

QQ图片20150531003336.png
回复 使用道具 举报
不要把主函数定义在内部类里面
回复 使用道具 举报
叶燕希 发表于 2015-5-30 23:07
这个不影响吧~~~我去掉了还是不行啊

public 不关事。。。。。这不会影响的
回复 使用道具 举报
你实例化对象的代码    Ye_9 p=new Ye_9;

是不是有问题呀           Ye_9 p=new Ye_9();
回复 使用道具 举报
把下面类里的public去掉
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马