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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

public class Student {
        private String name;
        private int age;
        public Student() {
                super();
               
        }
        public Student(String name, int age) {
                super();
                this.name = name;
                this.age = age;
        }
        public String getName() {
                return name;
        }
        public void setName(String name) {
                this.name = name;
        }
        public int getAge() {
                return age;
        }
        public void setAge(int age) {
                this.age = age;
        }
        @Override
        public String toString() {
               
                return getName +"   *  "+ getAge;          //为什么getName和 getAge 会报错??
                //return name + "      "+age;
        }
       
}

12 个回复

倒序浏览
我路过!
回复 使用道具 举报
getName和 getAge是方法,需要对象才能调用,你这直接拿出来怎么用
回复 使用道具 举报 1 0
luyang18 来自手机 中级黑马 2016-1-7 00:22:17
板凳
小括号哪去了?
回复 使用道具 举报
你没有实例化对象,没有通过对象来调用
回复 使用道具 举报
不是这样直接用的,需要对象调用才行
回复 使用道具 举报
方法后面要 加小括号的 你这是掉成员变量
回复 使用道具 举报
楼上很多都说方法需要对象才能调用,但是在本类中,声明的方法是可以直接调用的,不需要对象。(原因是在加载方法的时候JVM会自动把this关键字放入到调用方法的数组中,这个原因你先知道就行,不需要知道为什么)。
最大的问题是你没有把小括号就上。。所以报错了,这是很基础的语法问题,希望你巩固一下~
回复 使用道具 举报

666666666666666
回复 使用道具 举报
你不觉少点什么吗
回复 使用道具 举报
第一次见有人这么用 = =
回复 使用道具 举报
要用对象才能调用
回复 使用道具 举报
这里直接用属性就行了 为什么要掉方法呢  再说了也调用不了啊
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马