回答編集履歴

3 軽微な修正

tatsuya6502

tatsuya6502 score 1094

2016/03/24 10:48  投稿

ここですが、
```java
public Account(String owner,int balance){
   owner=owner;
   balance=balance;
}
```
これだと、コンストラクタの引数 `owner` に自分自身を代入して、次に `balance` に..(略)、という意味のない代入になっています。
以下のように変更してください。
```java
public Account(String owner, int balance){
public Account(String owner, int balance) {
   this.owner = owner;
   this.balance = balance;
}
```
また、以下のように `final` を付けると、このようなミスがあった時に、コンパイルエラーにできます。
```java
public Account(final String owner, final int balance){
public Account(final String owner, final int balance) {
   owner = owner;     // エラーになる
   this.owner = owner; // OK
   this.balance = balance;
}
```
2 エラーになる例を追加しました

tatsuya6502

tatsuya6502 score 1094

2016/03/24 10:47  投稿

ここですが、
```java
public Account(String owner,int balance){
   owner=owner;
   balance=balance;
}
```
これだと、コンストラクタの引数 `owner` に自分自身を代入して、次に `balance` に..(略)、という意味のない代入になっています。
以下のように変更してください。
```java
public Account(String owner, int balance){
   this.owner = owner;
   this.balance = balance;
}
```
また、以下のように `final` を付けると、このようなミスがあった時に、コンパイルエラーにできます。
```java
public Account(final String owner, final int balance){
   this.owner = owner;
   owner = owner;     // エラーになる
   this.owner = owner; // OK
   this.balance = balance;
}
```
1 誤字を修正しました

tatsuya6502

tatsuya6502 score 1094

2016/03/24 10:40  投稿

ここですが、
```java
public Account(String owner,int balance){
   owner=owner;
   balance=balance;
}
```
これだと、コンストラクタの引数 `owner` に自分自身を代入して、次に `balance` に..(略)、という意味のない代入になっています。
以下のように変更してください。
```java
public Account(String owner, int balance){
   this.owner = owner;
   this.balance = balance;
}
```
また、以下のよう `final` を付けると、このようなミスが合った時に、コンパイルエラーにできます。
また、以下のように `final` を付けると、このようなミスがあった時に、コンパイルエラーにできます。
```java
public Account(final String owner, final int balance){
   this.owner = owner;
   this.balance = balance;
}
```

思考するエンジニアのためのQ&Aサイト「teratail」について詳しく知る