OC简单知识的练习
来源:互联网 发布:淘宝开店类目 知乎 编辑:程序博客网 时间:2024/05/29 11:56
习题:
利用Objective-C语言编写一个Screen类,它包括一个int类型的属性color,和两个对color进行操作的方法。其中一个是用于设置color值的方法setColor,方法没有返回值,形参是一个int类型的变量_color,方法的实现是将_color的值赋值给color。还有一个是用于显示color值的方法displayColor,它是一个没有参数和返回值的方法,方法的实现是显示color的值。
(1) 在主函数中创建Screen类的对象myScreen。。
(2) 然后从键盘上接收一个整数,利用发送消息的方式调用myScreen的setColor方法,将这个整数发送给myScreen,完成对属性color的赋值。
(3) 调用对象myScreen的displayColor方法输出color的值。
//
// Screen.h
// OC_03面向对象编程基础4.1.1任务描述
//
// Created by 谷建鹏 on 14-3-19.
// Copyright (c) 2014年 com.csdn. All rights reserved.
//
#import <Foundation/Foundation.h>
@interface Screen : NSObject
{
int color;
}
//用于设置color的变量方法;
//无返回值;
-(void)setColor:(int) _color;
//用于设置color变量的调用方法用displayColor;
-(void)displayColor;
@end
//
// Screen.m
// OC_03面向对象编程基础4.1.1任务描述
//
// Created by 谷建鹏 on 14-3-19.
// Copyright (c) 2014年 com.csdn. All rights reserved.
//
#import "Screen.h"
@implementation Screen
//设置形参数,_color;
-(void)setColor:(int)_color{
//将_color的值赋值给color
color = _color;
}
//用于显示color的调用方法;没有参数和返回值的参数。。
-(void)displayColor{
NSLog(@"您输入一个数是:\ncolor = %d\n",color);
}
@end
//
// main.m
// OC_03面向对象编程基础4.1.1任务描述
//
// Created by 谷建鹏 on 14-3-19.
// Copyright (c) 2014年 com.csdn. All rights reserved.
//
#import <Foundation/Foundation.h>
#import "Screen.h"
int main(int argc, const char * argv[])
{
@autoreleasepool {
//创建一个Scree类的对象screen;
Screen *screen = [[Screen alloc] init];
//定义color;
int color;
//从键盘上插入一个color;
scanf("请您输入一个数:%d",&color);
[screen setColor:color];
[screen displayColor];
}
return 0;
}
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
简单的四则运算问题
//
// Calculator.h
// 简单运算
//
// Created by 谷建鹏 on 14-3-20.
// Copyright (c) 2014年 com.csdn. All rights reserved.
//
#import <Foundation/Foundation.h>
@interface Calculator : NSObject
//定义设置初始累加数的方法setAccmulator
-(void) setAccmulator:(double) val;
-(void) clear; //清零累加数的方法
-(double) accmulator;
-(void) add:(double) val;
-(void) subtract:(double) val;
-(void) multiply:(double) val;
-(void) divide:(double)val;
@end
//
// Calculator.m
// 简单运算
//
// Created by 谷建鹏 on 14-3-20.
// Copyright (c) 2014年 com.csdn. All rights reserved.
//
#import "Calculator.h"
@implementation Calculator
{
double accmulator;
}
-(void) setAccmulator:(double) val
{
accmulator=val;
}
-(void) clear
{
accmulator=0;
}
-(double) accmulator
{
return accmulator;
}
-(void) add:(double) val
{
accmulator+=val;
}
-(void) subtract:(double) val
{
accmulator-=val;
}
-(void) multiply:(double) val
{
accmulator*=val;
}
-(void) divide:(double)val
{
accmulator/=val;
}
@end
//
// main.m
// 简单运算
//
// Created by 谷建鹏 on 14-3-20.
// Copyright (c) 2014年 com.csdn. All rights reserved.
//
#import <Foundation/Foundation.h>
#import "Calculator.h"
int main(int argc, const char * argv[])
{
@autoreleasepool {
Calculator *calc = [Calculator new];
[calc setAccmulator:10.0];
[calc add:50.];
[calc divide: 20.0];
[calc multiply:40];
[calc subtract:20];
NSLog(@"The result is %g",[calc accmulator]);
[calc clear];
NSLog(@"The accmulator is %g",calc.accmulator);
}
return 0;
}
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
定义一个名为Car的类,类中的属性可以包含轮子转速speed、轮子的半径radius、汽车重量weight。为Car类定义一些方法,要求能够通过这些方法来设置类中的属性值。创建该类的两个实例化对象。定义一个函数,要求能够计算出汽车的行驶速度并且显示出来。
//// main.m
// 轮子转速
//
// Created by 谷建鹏 on 14-3-20.
// Copyright (c) 2014年 com.csdn. All rights reserved.
//
#import <Foundation/Foundation.h>
@interface Car : NSObject
@property float speed,weight;
@property int radius;
-(void)display;
@end
@implementation Car
@synthesize speed,weight,radius;
-(void)display{
NSLog(@"汽车的重量:%.2f,汽车的行驶速度:%.3f",weight,speed*2*3.14*radius);
}
@end
int main(int argc, const char * argv[])
{
@autoreleasepool {
Car *car = [[Car alloc] init];
[car setSpeed:3.5];
[car setRadius:3];
[car setWeight:1000.55];
[car speed];
[car radius];
[car weight];
[car display];
}
return 0;
}
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
dealloc 方法的使用
//
// Student.h
// 5_dealloc
//
// Created by 谷建鹏 on 14-3-18.
// Copyright (c) 2014年 com.csdn. All rights reserved.
//
#import <Foundation/Foundation.h>
@interface Student : NSObject
{
int age;
NSString *s; //存字符串
}
-(void)setAge:(int) _age;
//定义一个方法
-(void)test;
@end
//
// Student.m
// 5_dealloc
//
// Created by 谷建鹏 on 14-3-18.
// Copyright (c) 2014年 com.csdn. All rights reserved.
//
#import "Student.h"
@implementation Student
-(void)setAge:(int) _age{
//申请一个内存空间,长度为4个字节
//s = (char *)malloc(5);
//给s赋值为csdn
s = [[NSString alloc] initWithString:@"csdn"];
age = _age;
}
-(void)test{
//NSLog(@"age = %d,s = %@",age,s);
}
调用dealloc方法
-(void)dealloc{//先释放父类的资源
[super dealloc];
NSLog(@"释放资源!!!");
}
@end
//
// main.m
// 5_dealloc
//
// Created by 谷建鹏 on 14-3-18.
// Copyright (c) 2014年 com.csdn. All rights reserved.
//
#import <Foundation/Foundation.h>
#import "Student.h"//引入头文件
int main(int argc, const char * argv[])
{
@autoreleasepool {
//将Student进行实例化
Student *stu =[[Student alloc] init];
//进行调用set方法
[stu setAge:34];
//打印输出
[stu test];
[stu release];
}
return 0;
}
- OC简单知识的练习
- 给初学者,OC知识的简单总结
- OC类的练习
- OC语法基础简单代码练习Demo
- OC一些字符串的练习
- OC-类的创建练习
- IOS开发---OC语言-③类的设计和简单练习
- OC 简单的webview
- 简单的OC程序
- 简单的OC程序
- OC初识之简单的OC程序
- oc知识
- oc知识
- OC学习笔记之OC类的设计练习实战
- OC-观察者练习练习
- OC小练习:字符串的应用
- 我的OC练习(一)
- OC-对象和方法的练习
- 程序员面试宝典第七章总结——指针与引用
- 第五周作业的抄写部分
- jqgrid加载数据
- SpringMVC和Struts2比较
- Java 时间转换
- OC简单知识的练习
- java 文件 大小格式化输出
- 关于mysql 索引的文章
- Ali实习生笔试总结
- 网络经典命令大全
- 几种排序以及其时间复杂度
- 正则表达式学习总结
- 【推荐系统实战】:C++实现基于用户的协同过滤(UserCollaborativeFilter)
- C语言里的写文件