黑马程序员技术交流社区

标题: 封装题 报错 求解 [打印本页]

作者: fans0414    时间: 2016-3-24 01:39
标题: 封装题 报错 求解
class Demo2_Phone {

        public static void main(String[] args){
                Phone p = new Phone();
                p.setBrand("三星");
                p.setPrice(5288) ;
                System.out.print(p.getBrand()+"..."+p.getPrice());
        }
}
class Phone {
        private String brand;//属性
        private int price;
                                       
        public String setBrand(String brand){
                this.brand = brand;
        }
        public String getBrand(){
                return this.brand;
        }
        public int setPrice(int price){
                this.price = price;
       
        }
        public int getPrice(int price){
                return this.price;
       
        }
                                       
                                       
                                       
                                       
                                       
                                       
                                       
                                        //行为
        public void call(){
                System.out.println("打电话");
        }
        public void sendMessage(){
                System.out.println("发信息");
        }
        public void playGame(){
                System.out.println("玩游戏");
        }
}
按自己思路打出来的 但是报错了
Demo2_Phone2.java:7: 错误: 无法将类 Phone中的方法 getPrice应用到给定类型;
                System.out.print(p.getBrand()+"..."+p.getPrice());
                                                                             ^
  需要: int
  找到: 没有参数
  原因: 实际参数列表和形式参数列表长度不同
1 个错误


作者: 278008379    时间: 2016-3-24 12:06
设置价格的返回值错了,好好想想
作者: 278008379    时间: 2016-3-24 12:07
设置属性的返回值,好好看看
作者: zx7750462    时间: 2016-3-24 12:39
当然会报错啦,你看看你getPrice方法的参数列表,不需要加int price的,你getBrand()都没加,为啥getPrice加了,手误吧估计!以后看到实际参数列表和形式参数列表不同,第一时间核对下方法的参数列表有没有问题.
作者: sky0202    时间: 2016-3-24 12:40
返回值类型出错,应该是void类型
作者: houxiaoxiong    时间: 2016-3-24 12:48
public String setBrand// 应该是public void setBrand
public int setPrice//public void setPrice
               
作者: huhemingtiancai    时间: 2016-3-25 22:22
你把getPrice(int price)这里设置的需要一个参数,但是你的主函数里调用的时候没有传参数过来啊
作者: dbymzss    时间: 2016-3-25 23:36
setXxx()返回值是void;getXxx()l没有形式参数。。。。
作者: 兵蜂    时间: 2016-4-8 23:45
调用成员方法时,一定保证参数类型,顺序的一致性




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