###前提・実現したいこと
こんにちは。
今年度から社会人となりプログラミングを勉強しているのですが表題のセッター・ゲッター・カプセル化がうまくいきません。
使っているのはeclipseで言語はjavaです。
現在のソースで消費税率と商品価格をセッターで設定し消費税率、商品価格、税込みの価格、を出力したいです。
よろしくお願いします。
###発生している問題・エラーメッセージ
消費税率と商品価格をカプセル化してセッターで値を出力する書き方がわかりません。
###該当のソースコード
java
1 2 3 4public class Price { 5 6 7 private int price; 8 9 private double tax; 10 11 12 13 public void setTax( double tax1 ) { 14 15 this.tax = tax1; 16 tax1 = 0.08; 17 18 } 19 20 21 public void setPrice( int price1 ) { 22 23 this.price = price1; 24 price1 = 100; 25 } 26 27 28 public double getTax() { 29 30 return this.tax; 31 } 32 33 34 35 public int getPrice() { 36 37 return this.price; 38 } 39 40 41 public int getPriceIncludingTax() { 42 43 return (int) ( this.price * ( 1.0 + tax ) ); 44 45 46 } 47 48 49} 50public class PriceExamMain extends Price { 51 52 53 public static void main( String[] args ) { 54 55 System.out.println( "価格を" + price + "に設定" ); 56 System.out.println( "税率を" + tax + "に設定" ); 57 58 59 } 60} 61
###発生している問題・エラーメッセージ
この状態で実行したところこのようなエラーがでました。
Exception in thread "main" java.lang.Error: Unresolved compilation problems: フィールド Price.price は不可視です フィールド Price.tax は不可視です
###ソースコードを編集しました
もう一度やり直してみました
java
1 2public class Price { 3 4 5 private static int price; 6 7 private static double tax; 8 9 10 public void setTax( double tax1 ) { 11 12 this.tax = tax1; 13 tax1 = 0.08; 14 System.out.println( "税率を" + tax + "に設定" ); 15 16 } 17 18 19 public void setPrice( int price1 ) { 20 21 this.price = price1; 22 price1 = 100; 23 } 24 25 26 public double getTax() { 27 28 return this.tax; 29 } 30 31 32 public int getPrice() { 33 34 return this.price; 35 } 36 37 38 public int getPriceIncludingTax() { 39 40 return (int) ( this.price * ( 1.0 + tax ) ); 41 42 43 } 44 45 46 public static void main( String[] args ) { 47 48 System.out.println( "価格を" + price + "に設定" ); 49 System.out.println( "税率を" + tax + "に設定" ); 50 51 52 } 53} 54 55
###発生している問題・エラーメッセージ
上のソースだとこのような回答になりました。
価格を0に設定 税率を0.0に設定
###試したこと
private修飾子なので違うクラスからアクセスできないのはわかるのですがそのような場合にどこにメインクラスを置けばよいのでしょうか?
###補足情報(言語/FW/ツール等のバージョンなど)
より詳細な情報
回答3件
あなたの回答
tips
プレビュー