Objective_C_02

15/12/7
//  Objective_C_02

#import <Foundation/Foundation.h>
#import "Student.h"
#import "Person.h"
//#include:导入头文件,带入接口文件的方法(无自检功能)
//#import:导入头文件,带入接口文件的方法(自检,避免重复导入)
//@class Person:告诉编译器,后面跟着的是一个类(不做导入接口文件)

int main(int argc, const char * argv[]) {
//    形式1
    Student *stu = [[Student alloc] init];
//    stu->_name = @"赵六";//name用public修饰
//    stu->_age = 18;
//    //age用protected修饰 //只能在本类和子类中使用
//    stu->_score = 87.5;//用private修饰,只能在本类中使用
//    //系统默认用protected
    NSLog(@"%@\n",[stu getNames]);
    NSLog(@"%@\n",[stu getAges]);
    NSLog(@"%ld\n",[stu getScores]);
    
//    形式2
    [stu setName:@"lubi" age:@"20" score:90];
    NSLog(@"%@\n",[stu getName]);
    NSLog(@"%@\n",[stu getAge]);
    NSLog(@"%ld\n",[stu getScore]);
    
//    形式3
    [stu setName:@"f" :@"10" :59];
    NSLog(@"%@\n",[stu Name]);
    NSLog(@"%@\n",[stu Age]);
    NSLog(@"%ld\n",[stu Score]);
    
//    形式4
    [stu :@"liu" :@"25" :94 ];
    NSLog(@"%@\n",[stu Name]);
    NSLog(@"%@\n",[stu Age]);
    NSLog(@"%ld\n",[stu Score]);
    
    Person *per = [[Person alloc] init];
    NSLog(@"姓名:%@ 地址:%@ 年龄:%ld\n",[per name],[per address],[per age]);
    [per setPersonname:@"wanger" address:@"yuzhou" age:21];
    NSLog(@"姓名:%@ 地址:%@ 年龄:%ld\n",[per name],[per address],[per age]);
    [per name:@"xxx" address:@"yyy" age:41];
    NSLog(@"姓名:%@ 地址:%@ 年龄:%ld\n",[per name],[per address],[per age]);
    
//    自定义初始化
    Person *per0 = [[Person alloc] initWithName:@"liuneng"];
    NSLog(@"姓名:%@ 地址:%@ 年龄:%ld\n",[per0 name],[per0 address],[per0 age]);
    Person *per1 = [[Person alloc] initWithName:@"yujingnian" :@"dalian" :28];
    NSLog(@"姓名:%@ 地址:%@ 年龄:%ld\n",[per1 name],[per1 address],[per1 age]);
    Person *per2 = [[Person alloc] :@"zhaobenshan"];
    NSLog(@"姓名:%@ 地址:%@ 年龄:%ld\n",[per2 name],[per2 address],[per2 age]);
    return 0;
}

//  Objective_C_02

#import <Foundation/Foundation.h>
@interface Student : NSObject
{
    @public//公共的
    NSString *_name;
    @protected//受保护的
    NSString *_age;
    @private//私有的
    NSInteger _score;
    NSString *_sex;
}
//- (id)init;
//  setName赋值方法  getName取值方法
- (void)setNames:(NSString *)name;
- (NSString *)getNames;
- (void)setAge:(NSString *)age;
- (NSString *)getAges;
- (void)setScore:(NSInteger)score;
- (NSInteger)getScores;

//声明一个多参方法
- (void)setName:(NSString *)name
            age:(NSString *)age
          score:(NSInteger)score;
- (NSString *)getName;
- (NSString *)getAge;
- (NSInteger)getScore;

- (void)setName:(NSString *)name
            :(NSString *)age
          :(NSInteger)score;
- (NSString *)Name;
- (NSString *)Age;
- (NSInteger)Score;

- (void):(NSString *)name
:(NSString *)age
:(NSInteger)score;
- (NSString *)Name1;
- (NSString *)Age1;
- (NSInteger)Score1;
@end

#import "Student.h"
@implementation Student
- (id)init{
    _name  = @"lucy";
    _age = @"18";
    _score = 87;
    return self;
}
- (void)setNames:(NSString *)name{
    _name = name;
}
- (NSString *)getNames{
    return _name;
}
- (void)setAge:(NSString *)age{
    _age = age;
}
- (NSString *)getAges{
    return _age;
}
- (void)setScore:(NSInteger)score{
    _score = score;
}
- (NSInteger)getScores{
    return _score;
}
- (void)setName:(NSString *)name
            age:(NSString *)age
          score:(NSInteger)score{
    _name = name;
    _age = age;
    _score = score;
}
- (NSString *)getName{
    return _name;
}
- (NSString *)getAge{
    return _age;
}
- (NSInteger)getScore{
    return _score;
}
- (void)setName:(NSString *)name
               :(NSString *)age
               :(NSInteger)score{
        _name = name;
        _age = age;
        _score = score;
}
- (NSString *)Name{
    return _name;
}
- (NSString *)Age{
    return _age;
}
- (NSInteger)Score{
    return _score;
}

- (void):(NSString *)name
:(NSString *)age
:(NSInteger)score{
    _name = name;
    _age = age;
    _score = score;
}
- (NSString *)Name1{
    return _name;
}
- (NSString *)Age1{
    return _age;
}
- (NSInteger)Score1{
    return _score;
}
@end

#import <Foundation/Foundation.h>
@interface Person : NSObject
{
    @private
    NSString *_name;
    NSString *_address;
    NSInteger _age;
}
- (id)initWithName:(NSString *)name;
-(id)initWithName:(NSString *)name : (NSString *)address : (NSInteger)age;
- (id):(NSString *)name;
- (void)setPersonname:(NSString *)name
              address: (NSString *)address
                  age: (NSInteger)age;
- (NSString *)name;
- (NSString *)address;
- (NSInteger)age;
- (void)name:(NSString *)name address: (NSString *)address age: (NSInteger)age;
@end

#import "Person.h"
@implementation Person
//初始化
- (id)init{
    _name = @"lusy";
    _address = @"北京";
    _age = 21;
    return self;
}
//三种初始化方式
- (id)initWithName:(NSString *)name{
    _name = name;
    return self;
}
-(id)initWithName:(NSString *)name : (NSString *)address : (NSInteger)age{
    _name = name;
    _address = address;
    _age = age;
    return self;
}
- (id):(NSString *)name{
    _name = name;
    return self;
}

- (void)name:(NSString *)name
      address: (NSString *)address
          age: (NSInteger)age{
    _name = name;
    _address = address;
    _age = age;
}
- (void)setPersonname:(NSString *)name
              address: (NSString *)address
                  age: (NSInteger)age{
    _name = name;
    _address = address;
    _age = age;
}
- (NSString *)name{
    return _name;
}
- (NSString *)address{
    return _address;
}
- (NSInteger)age{
    return _age;
}

#import <Foundation/Foundation.h>

@interface Task : NSObject
{
    @public
    
}
@end

#import "Task.h"

@implementation Task

@end

posted @ 2015-12-19 14:25  DH_Fantasy  阅读(88)  评论(0)    收藏  举报