OC第一天——面向对象

简介:
1.OC: Object- C ,面向对象的语言
2、OC 和 C的区别:
<1> oc是 c的超集 ,oc是在c语言的基础上做了扩展,c语言中的所有语法,在oc中都可以使用,甚至你可以在工程里加入C++ 语言
<2>oc在c基础上扩展了面向对象的特点
<3>oc 是一门运行时语言
<4>oc为我们提供了丰富的类库

3、  如何学习好OC ?
    //1.百度 (ios)
   
  //2.看苹果的官方文档(API接口网站)
   
  //3.看博客
    //4.自己的错误总结

4、  面向对象编程的核心:类和对象
     面向对象编程的三大特征:封装,继承,多态
     类:具有相同特征和行为(功能)事物的抽象
 对象:就是类的实例化

5、  创建一个类:
     //1、通过Cocoa touch class 模板,创建类,自动生成.h 和 .m文件
   
  //2、在.h 文件中写类的特征(实例变量) 和方法的声明
    //3、在.m中写实现部分
 ——* 使用类创建对象*——
     //1、开辟内存空间
    //2、初始化

6、[ ]中括号调用方法
     //[Person alloc] 给person 这个类发送一个消息alloc(开辟内存空间)
   
  //创建对象person1
    //每一个对象 isa指针 用来指向它的父类,之所有能够调用父类的方法,完全是因为这个 isa  指针;

7、  初始化 如果初始化没有赋值这时默认所有的实例变量都为空;
                   person1 = [person1 init];
   这条语句同时完成了两件事:开辟内存并初始化;

8、例子:
.h文件:

//@interface 是接口 Person 是类名    :继承自谁 NSObject 是所有Oc类中的基类
//---------------------------Person类的创建对象的特征---------------------

@interface  Person :  NSObject

//特征一定要写在下面那对大括号里面
{     
  @public    //实例变量对@public 修饰后的就能在类的外部访问到这些实例变量了;
   
  //类的外部指:.h 和.m 之外的其他文件就叫类的外部
   
  //类的内部指:.h 和.m 文件之内
    //NSString 是OC中字符串类

                NSString  *_name; //姓名NSString 不是基本数据类型,所以定义它需要加*
   
             
  NSInteger    _age;//年龄NSInteger 是基本数据类型,所以定义变量时不需要加*号
               NSString *_sex;//性别
// ----------------------------Persson类型创建出对象所拥有的行为----------
//行为的声明部分
//用 (减号)(- )号 修饰的方法属于对象方法,这个方法只能有我们定义这个类的创建出来对象来调用
//用加好(+)修饰的方法属于类方法,这这方法只能有类来调用

- (
id )init; //重写inint写法
- (
void )sayHello; //小驼峰命名法
- (
void )eat;


//添加一个带参数的方法
//一个冒号:代表一个参数
//写一个带有参数的方法时格式<    :(数据类型)参数名   >
- (void)talk:(NSString *)content;     //隐匿有参数数据类型
- ( void )talk:( NSString  *)content withSonmeone : ( NSString  *)name;
@end
————————————————————————
.m文件:
/@implementation 是类的实现部分
@implementation  Person
//id 范类型,返回值可以指向任何类型的对象   类似于void *  ;
- (id)init{—————————赋给初始值————————
    _name  =  @"翔哥" ;
  
  _sex  =  @"妖" ;
   
  _age  =  18 ;
   
   
  //打印self地址
   
  NSLog ( @"self地址:%p" , self );
   
   
  //谁调用这个方法self 指的就是谁
    return self;
————————————————————————————————————
main.m  文件:
  Person  *p = [[ Person  alloc ] init ];
   
  //调用sayhello的方法
    [p
  sayHello ];
    p->
_name  =  @"zhangSan" ;
    p->
_age  =  18 ;
    p->
_sex  =  @"妖" ;
    [p
  sayHello ];
   
  //调用吃得方法
    [p eat];
转自:http://blog.csdn.net/qq_31810357
相关文章
|
Java 数据安全/隐私保护
Java修饰符和运算符,超详细整理,适合新手入门
Java修饰符和运算符,超详细整理,适合新手入门
131 0
|
存储 Java API
Java Review (二十一、基础类库----日期、时间类)
Java Review (二十一、基础类库----日期、时间类)
137 0
|
安全 Java
Java Review (十一、面向对象----多态)
Java Review (十一、面向对象----多态)
100 0
|
C++
C++面向对象高级编程(下) 第一周
Conversion Function 转换函数 你现在设计一个对象 class A,它可不可以被转为另外一种类型,这就是一种转换。
896 0
|
C++ 编译器 设计模式
C++面向对象高级编程(上) 第一周 侯捷
头文件与类声明   头文件中的防卫式声明 #ifndef _FILENAME_ #define _FILENAME_ //... #endif 扩展:为什么要添加防卫式声明(防止由于同一个头文件被包含多次,而导致了重复定义。
1306 0
《Java 7程序设计入门经典》一第2章 数据类型和运算符
本节书摘来自华章出版社《Java 7程序设计入门经典》一书中的第2章,第2.0节,作者(美)Herbert Schildt Dale Skrien,更多章节内容可以访问云栖社区“华章计算机”公众号查看
1358 0
《Java 7程序设计入门经典》一2.14 运算符的优先级
本节书摘来自华章出版社《Java 7程序设计入门经典》一书中的第2章,第2.14节,作者(美)Herbert Schildt Dale Skrien,更多章节内容可以访问云栖社区“华章计算机”公众号查看
1424 0
《Java 7程序设计入门经典》一2.15 表达式
本节书摘来自华章出版社《Java 7程序设计入门经典》一书中的第2章,第2.15节,作者 (美)Herbert Schildt Dale Skrien,更多章节内容可以访问云栖社区“华章计算机”公众号查看
1165 0
|
C语言 人工智能
C语言OJ项目参考(2428) 本年中是第几天
2428: 计算该日在本年中是第几天 Description 定义一个结构体变量(包括年、月、日)。编写一个函数days,由主函数将年、月、日传递给函数days,计算出该日在本年中是第几天并将结果传回主函数输出。 Input 年月日 Output 当年第几天 Sample Input 2000 12 31 Sample Output 366 HINT 主函数已给
1242 0
|
C++
OC第一天——面向对象
1.OC: Object- C ,面向对象的语言 2、OC 和 C的区别: oc是 c的超集 ,oc是在c语言的基础上做了扩展,c语言中的所有语法,在oc中都可以使用,甚至你可以在工程里加入C++ 语言 oc在c基础上扩展了面向对象的特点 oc 是一门运行时语言 oc为我们提供了丰富的类库 3、 如何学习好OC ?     //1.
670 0