OC语言-01类和对象

时间:2022-05-08 13:53:35
// cc 文件名.m -framework Foundation   编译链接

#import <Foundation/Foundation.h>

//枚举性别
typedef enum{
SexMen,
SexWoman,
SexUnknow
} Sex; //枚举毛色
typedef enum{
FurColorBlack,
FurColorRed,
FurColorGreen
} FurColor; //结构体日期
typedef struct{
int year;
int month;
int day;
} Date; //创建狗类
@interface Dog : NSObject
{
@public
double weigth; //体重
FurColor fcolor; //毛色
}
- (void)run;
- (void)eat;
@end //实现狗类方法
@implementation Dog
- (void)run
{
weigth -= ;
NSLog(@"狗开始跑了,体重减1,现在的体重是:%.2f",weigth);
}
- (void)eat
{
weigth += ;
NSLog(@"狗开始吃了,体重加1,现在的体重是:%.2f",weigth);
}
@end //创建学生类
@interface Student : NSObject
{
@public
char *name; //姓名
Sex sex; //性别
int age; //年龄
double weigth; //体重
Date birthday; //生日
Dog *dog;
}
- (void)liuDog;
- (void)weiDog;
- (void)print;
@end //实现学生方法
@implementation Student
- (void)print
{
NSLog(@"姓名:%s,性别:%d,年龄:%d岁,体重:%.2f公斤,出生日期:%d-%d-%d,狗的体重:%.2f,狗的毛色:%d",name,sex,age,weigth,birthday.year,birthday.month,birthday.day,dog->weigth,dog->fcolor);
} -(void)liuDog
{
[dog run];
}
- (void)weiDog
{
[dog eat];
}
@end int main()
{
Dog *zsDog = [Dog new];
zsDog->weigth = ;
zsDog->fcolor = FurColorBlack; Student *zs =[Student new];
zs->name = "jack"; //??中文赋值时无输出??
zs->sex = SexMen;
zs->age = ;
zs->weigth = 75.3;
Date d = {,,};
zs->birthday = d;
zs->dog =zsDog;
[zs print];
[zs liuDog];
[zs weiDog];
return ;
}
#import <Foundation/Foundation.h>

@interface Calc : NSObject
{ }
- (int)sumWithNum1:(int)num1 andNum2:(int)num2;
- (int)pingFangWithNum:(int)num;
@end @implementation Calc - (int)sumWithNum1:(int)num1 andNum2:(int)num2;
{
return num1+num2;
} -(int)pingFangWithNum:(int)num
{
return num * num;
}
@end int main()
{
Calc *c= [Calc new];
int sum = [c sumWithNum1: andNum2:];
int pf =[c pingFangWithNum:];
NSLog(@"sum=%d,平方:%d",sum,pf);
return ;
}

OC语言-01类和对象的更多相关文章

  1. OC 01 类和对象

    一.  定义OC的类和创建OC的对象 接下来就在OC中模拟现实生活中的情况,创建一辆车出来.首先要有一个车子类,然后再利用车子类创建车子对象 要描述OC中的类稍微麻烦一点,分2大步骤:类的声明.类的实 ...

  2. OC第一节 —— 类和对象

    一.类和对象的概念 1.1类 自己的定义: 具有相同或相似性质对象的抽象. 1.2 对象 自己的定义: 对象是人们要进行研究的任何物体,从最简单的整数到复杂的飞机 等均可以看做是对象. 举例说明: 类 ...

  3. OC学习5——类和对象

    1.OC是在C语言基础上进行扩展得到的一门面向对象的程序设计语言,它也提供了定义类.成员变量和方法的基本功能.类可以被认为是一种自定义的数据类型,使用它可以定义变量,所有使用类定义的变量都是指针类型的 ...

  4. iOS开发-OC语言 &lpar;二&rpar;类的设计

    p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 24.0px Helvetica } p.p2 { margin: 0.0px 0.0px 0.0px 0. ...

  5. OC开发系列-类与对象

    面向对象 面向对象思想是一种解决问题的思想, 不在是面向过程的去思考问题怎样解决.面向对象解决问题时首先要考虑需要找几个对象能解决这个问题. 常见的概念: * Object Oriented 面向对象 ...

  6. Java公开课-01&period;类和对象

    一,类和对象的含义 1.类:类是具有相同属性(静态特征)和行为(功能 )的一系列事物的集合. eg:以下俩者是不是类 1)汽车  √ 2)小胖桌子上那个红色的杯子  × 2.对象:被精确限定到一个特殊 ...

  7. &lbrack;Objective-C语言教程&rsqb;类和对象(24)

    Objective-C编程语言的主要目的是为C编程语言添加面向对象,类是Objective-C的核心特性,支持面向对象编程,通常称为用户定义类型. 类用于指定对象的形式,它将数据表示和方法组合在一起, ...

  8. Java知识系统回顾整理01基础02面向对象01类和对象

    一.面向对象实例--设计英雄这个类 LOL有很多英雄,比如盲僧,团战可以输,提莫必须死,盖伦,琴女 所有这些英雄,都有一些共同的状态 比如,他们都有名字,hp,护甲,移动速度等等 这样我们就可以设计一 ...

  9. ios开发之OC基础-类和对象

    本系列的文章主要来自于个人在学习前锋教育-欧阳坚老师的iOS开发教程之OC语言教学视频所做的笔记,边看视频,边记录课程知识点.建议大家先过一遍视频,在看视频的过程中记录知识点关键字,把把握重点,然后再 ...

随机推荐

  1. struts2&plus;hibernate整合-实现登录功能

    最近一直学习struts2+hibernate框架,于是想把两个框架整合到一起,做一个小的登录项目.其他不多说,直接看例子. 1).Struts2 和hibernate的环境配置 包括jar包.web ...

  2. &lbrack;No00006F&rsqb;总结C&num;获取当前路径的各种方法

    using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...

  3. VC&plus;&plus; 判断当前系统为32位还是64位

    尝试了在VC++环境下判断系统为32位还是64位的方法,亲测有效!提供的函数如下 BOOL IsWow64() { typedef BOOL (WINAPI *LPFN_ISWOW64PROCESS) ...

  4. facelets标签

    facelets标签 <ui:component>标签用于JSF组件树中插入一个uicomponent实例,并作为它包含的的组件和内容片断的根节点,这视图中这个标签以外的的内容被编译器忽略 ...

  5. sql server统计字段的值在某些范围内中的个数

    有一张表test如下: create table test ( id ,) primary key, num int ) 插入数据: ); ); ); ); ); ); ); ); ); ); ); ...

  6. CSS学习笔记汇总

    CSS语法格式:一个css规则,由一个选择器和一个格式声明语句构成    例如:h1{color:red; font-size:14px;} CSS选择器: 1.基本选择器 1)* 号选择器:通配符, ...

  7. win10 uwp 毛玻璃

    毛玻璃在UWP很简单,不会和WPF那样伤性能. 本文告诉大家,如何在 UWP 使用 win2d 做毛玻璃. 毛玻璃可以使用 win2D 方法,也可以使用 Compositor . 使用 win2d 得 ...

  8. 【转】S3C2440与SDRAM NorFlash NandFlash连线分析

    一.SDRAM(HY57V561620F)连线分析 1.  S3C2440 有27根地址线ADDR[26:0],8根片选信号ngcs0-ngcs7,对应bank0-bank7,当访问bankx 的地址 ...

  9. &lbrack;C&rsqb;控制外部变量访问权限的extern和static关键字

    一.extern 概述 编译器是由上至下编译源文件的,当遇到一些函数引用外部全局变量,而这个变量被定义在该函数声明主体的下方,又或者引用自其它的编译单元,这个情况就需要extern来向编译器表明此变量 ...

  10. bzoj 4459&colon; &lbrack;Jsoi2013&rsqb;丢番图 -- 数学

    4459: [Jsoi2013]丢番图 Time Limit: 10 Sec  Memory Limit: 64 MB Description 丢番图是亚历山大时期埃及著名的数学家.他是最早研究整数系 ...