teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

3

初心者アイコンつけました

2018/06/14 16:38

投稿

退会済みユーザー
title CHANGED
File without changes
body CHANGED
File without changes

2

自分で代入できるところまでやりました

2018/06/14 16:38

投稿

退会済みユーザー
title CHANGED
File without changes
body CHANGED
@@ -20,12 +20,14 @@
20
20
  ### 発生している問題・エラーメッセージ
21
21
 
22
22
  ```
23
- エラーメッセージは出ていないのですが、
23
+ エラーメッセージはありませんが、
24
+ 代入した結果「aName : 山田太郎」
24
- Accountクラスを作成
25
+ と表示させることはできまた。
25
- その中にプロパティを作成したのですが、
26
- そこから実装と指定したメソッドのように
27
- 出力するにはどういったコードを書いていくのかがわかりません。
28
26
 
27
+ ここから上記のメソッドのように
28
+ 男性の場合、「○○君は、○○が得意な○○歳です。」と表示する
29
+ 女性の場合、「○○さんは、○○が得意な○○歳です。」と表示する。
30
+ と表示するにはどんなNSLogになるのかを知りたいです。
29
31
  ```
30
32
 
31
33
  ### 該当のソースコード
@@ -34,32 +36,110 @@
34
36
  // クラスヘッダファイル(Account.h)
35
37
  #import <Foundation/Foundation.h>
36
38
 
37
- @interface Account : NSObject
39
+ @interface Account : NSObject{
40
+ // 名前
41
+ NSString *_name;
42
+ // 年齢
43
+ NSInteger _age;
44
+ // 性別
45
+ NSString *_gender;
46
+ // 得意な言語
47
+ NSString *_language;
48
+ }
38
49
 
50
+ // 名前を取得する
51
+ - (NSString *)name;
52
+ // 名前を設定する
39
- @property (nonatomic) NSString *name; //名前
53
+ - (void)setName:(NSString *)name;
40
- @property (nonatomic) NSInteger age; //年齢
41
- @property (nonatomic) NSString *gender; //性別
42
- @property (nonatomic) NSString *language; //得意な言語
43
54
 
55
+ // 年齢を取得する
56
+ - (NSInteger)age;
57
+ // 年齢を設定する
58
+ - (void)setAge:(NSInteger)age;
59
+
60
+ // 性別を取得する
61
+ - (NSString *)gender;
62
+ // 性別を設定する
63
+ - (void)setGender:(NSString *)gender;
64
+
65
+ // 言語を取得する
66
+ - (NSString *)language;
67
+ // 言語を設定する
68
+ - (void)setLanguage:(NSString *)language;
69
+
44
70
  @end
45
71
 
46
72
 
47
73
  // クラス実装(Account.m)
48
74
  #import "Account.h"
75
+ @implementation Account
76
+ // 名前を取得する
77
+ - (NSString *)name{
78
+ return _name;
79
+ }
80
+ // 名前を設定する
81
+ - (void)setName:(NSString *)name{
82
+ _name = name;
83
+ }
84
+ // 年齢を取得する
85
+ - (NSInteger)age{
86
+ return _age;
87
+ }
88
+ // 年齢を設定する
89
+ - (void)setAge:(NSInteger)age{
90
+ _age = age;
91
+ }
92
+ // 性別を取得する
93
+ - (NSString *) gender{
94
+ return _gender;
95
+ }
96
+ // 性別を設定する
97
+ - (void)setGender:(NSString *)gender{
98
+ _gender = gender;
99
+ }
100
+ // 言語を取得する
101
+ - (NSString *)language{
102
+ return _language;
103
+ }
104
+ // 言語を設定する
105
+ - (void)setLanguage:(NSString *)language{
106
+ _language = language;
107
+ }
49
108
 
109
+ // (ViewController.m)
110
+ import "ViewController.h"
111
+ #import "Account.h" //
112
+
50
- @implementation Account
113
+ @interface ViewController ()
51
114
  @end
52
115
 
116
+ @implementation ViewController
117
+ - (void)viewDidLoad {
118
+ [super viewDidLoad];
119
+ // Do any additional setup after loading the view, typically from a nib.
53
120
 
121
+ // Personクラスのインスタンスを生成する
122
+ Account *aAccount = [Account new];
54
- // (main.m)
123
+ // nameに値を設定する
124
+ aAccount.name = @"山田太郎";
55
- // ここに男性の場合、「○○君は、○○が意な○○歳で。」と表示して
125
+ // nameから値を取得す
126
+ NSString *aName = aAccount.name;
127
+
56
- // 女性の場合、「○○さんは、○○が得意な○○歳です。」と表示したいです。
128
+ NSLog(@"aName : %@", aName);
57
129
 
130
+ }
131
+
132
+ - (void)didReceiveMemoryWarning {
133
+ [super didReceiveMemoryWarning];
134
+ // Dispose of any resources that can be recreated.
135
+ }
136
+
137
+ @end
138
+
58
139
  ```
59
140
 
60
141
  ### 試したこと
61
- クラスの作成してプロパティを作るところまでわかったのですが、
62
- 以降が調べもさっぱりです、、、
142
+ 短縮されてないコードに代入してみました。
63
143
 
64
144
  ### 補足情報(FW/ツールのバージョンなど)
65
145
 

1

自分がいれているコードを記載

2018/06/13 08:41

投稿

退会済みユーザー
title CHANGED
File without changes
body CHANGED
@@ -20,41 +20,46 @@
20
20
  ### 発生している問題・エラーメッセージ
21
21
 
22
22
  ```
23
- ググれば例文といいますか、
24
- 下記のようなコ見つかるのですが、
23
+ エラメッセージ出ていないのですが、
24
+ Accountクラスを作成し、
25
+ その中にプロパティを作成したのですが、
26
+ そこから実装と指定したメソッドのように
25
- それを実際自分がしたよう当てめること出来ずません
27
+ 出力するにはどういったコードを書いていくのかわかりません
26
28
 
27
29
  ```
28
30
 
29
31
  ### 該当のソースコード
30
32
 
31
33
  ```objective-c
32
- // クラスヘッダファイル(Foo.h)
34
+ // クラスヘッダファイル(Account.h)
33
- @interface Foo : NSObject
34
-
35
- @property (nonatomic, copy) NSString *name;
35
+ #import <Foundation/Foundation.h>
36
- @property (nonatomic, assign) NSUInteger age;
37
-
38
- @end
39
36
 
37
+ @interface Account : NSObject
40
38
 
41
- // クラス実装(Foo.m)
39
+ @property (nonatomic) NSString *name; //名前
42
- #import "Foo.h"
40
+ @property (nonatomic) NSInteger age; //年齢
43
-
44
- @implementation Foo
41
+ @property (nonatomic) NSString *gender; //性別
45
- @end
42
+ @property (nonatomic) NSString *language; //得意な言語
46
43
 
44
+ @end
47
45
 
48
- // 利用側ソース
49
- Foo *foo = [[Foo alloc] init];
50
- foo.name = @"Hanako"; // 代入
51
- foo.age = 18; // 代入
52
- NSLog(@"name: %@ age:", foo.name, foo.age); // 参照
53
46
 
47
+ // クラス実装(Account.m)
48
+ #import "Account.h"
49
+
50
+ @implementation Account
51
+ @end
52
+
53
+
54
+ // (main.m)
55
+ // ここに男性の場合、「○○君は、○○が得意な○○歳です。」と表示して
56
+ // 女性の場合、「○○さんは、○○が得意な○○歳です。」と表示したいです。
57
+
54
58
  ```
55
59
 
56
60
  ### 試したこと
57
- いろんな箇所に当はめてみの出来ずした。
61
+ クラスの作成しプロパティを作るところまでわかったのですが、
62
+ それ以降が調べてもさっぱりです、、、
58
63
 
59
64
  ### 補足情報(FW/ツールのバージョンなど)
60
65