标题:JAVA封装
只看楼主
_c_c
Rank: 1
等 级:新手上路
帖 子:34
专家分:0
注 册:2014-3-26
得分:0 
Scanner没报错好不?
2015-05-03 23:59
林月儿
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:湖南
等 级:版主
威 望:138
帖 子:2276
专家分:10647
注 册:2015-3-19
得分:0 
可我是sql班主,学的c,java是自学的,只是来凑热闹…楼主问题解决了就结贴吧

剑栈风樯各苦辛,别时冰雪到时春
2015-05-04 00:03
_c_c
Rank: 1
等 级:新手上路
帖 子:34
专家分:0
注 册:2014-3-26
得分:0 
你还没说如果Way01(){}在另一个class01上,再在class02上调用,这是封装么?
2015-05-04 00:05
林月儿
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:湖南
等 级:版主
威 望:138
帖 子:2276
专家分:10647
注 册:2015-3-19
得分:0 
…这不是封装,你赢了

剑栈风樯各苦辛,别时冰雪到时春
2015-05-04 00:10
_c_c
Rank: 1
等 级:新手上路
帖 子:34
专家分:0
注 册:2014-3-26
得分:0 
噢噢!怎么结贴?
2015-05-04 00:11
_c_c
Rank: 1
等 级:新手上路
帖 子:34
专家分:0
注 册:2014-3-26
得分:0 
import java.util.Scanner;

public class PlaneTicket {

    public static void main(String[] args){
        int n=0;
        PlaneNumber p=new PlaneNumber();
        Discount d=new Discount();
        p.setPrice(1000);
        System.out.println("请输入需要购买的张数:");
        Scanner scanner=new Scanner(System.in);
        n=scanner.nextInt();
        p.setNumber(n);
        System.out.println(p.getPrice()*d.way());
        
    }
   
}
--------------------------------------------------------------------
import java.util.Scanner;

public class PlaneNumber {
    private int number,price;
    public int getNumber() {
        return number;
    }
    public void setNumber(int number) {
        this.number = number;
    }
    public int getPrice() {
        return price*number;
    }
    public void setPrice(int price) {
        this.price = price;
    }

}
--------------------------------------------------
public class Discount {
    public double way(){
        double dis=0.0;
        PlaneNumber p=new PlaneNumber();
        if(p.getNumber()>20){
            dis=0.7;
        }else if(p.getNumber()>=11){
            dis=0.8;
        }else{
            dis=0.9;
        }
        return dis;
    }
}
---------------------------------------------------------
最后在林版主的帮助下勉强做出来了,谢谢林大版主这么晚也不睡来教育我!
2015-05-04 00:24
林月儿
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:湖南
等 级:版主
威 望:138
帖 子:2276
专家分:10647
注 册:2015-3-19
得分:0 
回复 16楼 _c_c
跟我没关系,要是我改就会是这样
import java.util.Scanner;

public class PlaneTicket {

    public static void main(String[] args){
        int n=0;
        PlaneNumber p=new PlaneNumber();
        Discount d=new Discount();
        p.setPrice(1000);
        System.out.println("请输入需要购买的张数:");
        Scanner scanner=new Scanner(System.in);
        n=scanner.nextInt();
        p.setNumber(n);
        System.out.println(p.getPrice()*d.way(p));
        
    }
   
}
 class PlaneNumber {
    private int number,price;
    public int getNumber() {
        return number;
    }
    public void setNumber(int number) {
        this.number = number;
    }
    public int getPrice() {
        return price*number;
    }
    public void setPrice(int price) {
        this.price = price;
    }

}

 class Discount {
     double dis=0.0;
    public double way(PlaneNumber p){
        if(p.getNumber()>20){
            dis=0.7;
        }else if(p.getNumber()>=11){
            dis=0.8;
        }else{
            dis=0.9;
        }
        return dis;
    }
}
楼主你是太谦虚了

剑栈风樯各苦辛,别时冰雪到时春
2015-05-04 10:07
_c_c
Rank: 1
等 级:新手上路
帖 子:34
专家分:0
注 册:2014-3-26
得分:0 
回复 17楼 林月儿
····没啥多大区别,只是class属性改下而已,Scanner语句能放在class PlaneNumber上么?
2015-05-05 08:51



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-444797-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.277858 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved