2016-09-01 24 views
0

私はJavaにはまったく新しく、C#でこれをやっている経験がありますが、何かが違うようです。私は、ユーザーからの入力を別のクラスの変数のsetメソッドに渡すようにしようとしています。Java:アクセス修飾子を使用してあるクラスから別のクラスに変数を渡す方法

//これはこれは

import java.util.Scanner; 
public class Lab1Main { 
    public void getInput() 
    { 

     HealthProfile user = new HealthProfile(); 
     Scanner input = new Scanner(System.in); 
     System.out.print("Please enter your name: "); 
     user.setName(input.nextLine()); 
     System.out.print("Your Age: "); 
     user.setAge(input.nextDouble()); 
     System.out.print("Your Weight: "); 
     user.setWeight(Double.parseDouble(input.nextLine())); 
    } 
} 
+0

サイドノート:Javaコーディングスタイルガイドを読む。 "_"はCONSTANT_NAMES(または数値リテラル)にのみ使用されますが、そうでなければJavaソースコードには場所がありません。 – GhostCat

答えて

0

間違った構文をユーザーが入力を取ってから値を渡すしようとしている方法イムある//

public class HealthProfile 
{ 
    private String name=""; 
    private double age; 
    private double weight; 
    private double height; 

    public String getName() { 
     return name; 
    } 

    public void setName(String name) { 
     this.name = name; 
    } 

    public double getAge() { 
     return age; 
    } 

    public void setAge(double age) { 
     this.age = age; 
    } 

    public double getWeight() { 
     return weight; 
    } 

    public void setWeight(double weight) { 
     this.weight = weight; 
    } 

    public double getHeight() { 
     return height; 
    } 

    public void setHeight(double height) { 
     this.height = height; 
    } 
} 

に変数を渡すしようとしているクラスのイムです:

user.setName(aName)= input.nextLine(); 

はする必要があります

user.setName(input.nextLine()); 

などです。 Javaでは、「名前付きパラメータ」のようなものはありません。メソッドを呼び出すときは、メソッド宣言で指定されているのとまったく同じ順序で、単に "インプレース"にパラメータを渡すだけです。

あなたの質問のタイトルの単語:アクセス修飾子は、どのフィールド/メソッドを使用できるかのみを制御しますは他のクラスのにアクセスします。あなたは何かを渡すためにそれらを "使う"ことはできません。

関連する問題