ObjectiveC1基础代码——类和对象
//
// main.m
// ObjectiveC1
//
// Created by scjy on 15/10/30.
// Copyright © 2015年 lizhipeng. All rights reserved.
//
#import <Foundation/Foundation.h>
//引入头文件(也就是类的.h文件,不能引入.m文件)
#import "person.h"
#import "Dinosaur.h"
int main(int argc, const char * argv[]) {
@autoreleasepool {
//********* oc第一讲 ***********//
//类和对象
//面向对象的核心是 类 和 对象。
//类:具有相同特征和行为的事物的抽象。特征,行为
//器官
//特性:长在人身上;
//行为:保证人体的正常生活;
//人
//特性:白种人、黑种人、黄种人
//行为:会说会笑会吃饭,会跑会跳会学习。会穿衣会打扮会呼吸,会选择会欣赏会杀生。
//oc中类的定义(定义类分为两个部分)
//.h接口部分(头文件):对外声明类的特征和行为(说明书)
//.m实现部分(文件):对内实现类的行为
//接口部分标志:@interface
//类是模板,对象是具体表现,任何对象需要占用内存空间
//创建对象分两步:分配内存空间和初始化。
//分配内存空间:根据类中声明的实例变量为对象分配内存,将所有实例变量置为默认值0,并返回首地址person *p = [person alloc];
//初始化:为对象的实例变量设置初始值 p = [p init];
//创建对象
//+(id)alloc:表示这个方法属于类,只能类执行。id返回值类型,表示任意类型的对象,即创建好的对象。
//-(id)init:表示这个方法属于对象,只能对象执行。id返回值类型,表示初始化完成的对象。
/*
-(id)init
{
_age = 18;
return self;
}
*/
//指针储存对象的首地址,代指对象。
//1.[[person alloc]init]返回值是对象的首地址,即对象。
//2.p是跟对象同类型的指针变量,储存对象首地址,代指对象。
//创建对象或实例化对象
//person *xiaoming =[person alloc];分配内存空间
//person *xiaoming =[person init];给成员变量赋值
person *xiaoming =[[person alloc]init];
//成员变量赋值用
xiaoming->_name =@"小米摩纳哥";
xiaoming->_sex =@"男";
xiaoming->_age =100;
xiaoming->_height =30;
xiaoming->_hobby =@"学习";
//使用对象,打招呼
[xiaoming eat];
[xiaoming sleep];
[xiaoming teach];
[xiaoming sayHellow];
person *zhangsan =[[person alloc]init];
[zhangsan eat];
[zhangsan sayHellow];
Dinosaur *konglong = [[Dinosaur alloc]init];
// konglong->_name =@"恐龙";
[konglong speak];
//实例变量操作
//实例变量区分可见度,常见的有三种。
//其一为@public(公开的)
//@protected(受保护的,默认的)
//@pritave(私有的)
}
return 0;
}
ObjectiveC1基础代码——类和对象的更多相关文章
- 086 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 03 面向对象基础总结 01 面向对象基础(类和对象)总结
086 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 03 面向对象基础总结 01 面向对象基础(类和对象)总结 本文知识点:面向对象基础(类和对象)总结 说明 ...
- php之基础深入---类与对象篇
1.类的自动加载: spl_autoload_register()函数可以注册任意数量的自动加载器,当使用尚未被定义的类(class)和接口(interface)时自动去加载,这样可以避免includ ...
- Java基础教程——类和对象
视屏讲解:https://www.bilibili.com/video/av48272174 面向过程 VS 面向对象 面向过程:强调步骤. 面向对象:强调对象. 面向对象的特点就是:隐藏具体实现的细 ...
- C++_基础_类和对象
内容: (1)引用 (2)类型转换 (3)C++社区给C程序员的建议 (4)面向对象编程的概念 (5)类和对象 (6)构造函数 (7)初始化列表及其必要性 1.引用1.1 指针和引用的使用说明(1)指 ...
- J2SE基础:1.类和对象基础
什么是对象 在Java语言,全部的人,事物或者模块都是一个对象. 同样的对象具有一些同样的特性. 狗,猫,蛇3个对象(动物的对象) 苹果,梨,桔子3个对象(水果的对象) 什么是类 能够将现实生活中的对 ...
- java基础知识—类和对象
1.对象的特征---类的属性 每个对象的每个属性都有特定的值 对象的操作---类的方法 2.封装 对象同时具有属性和方法两项属性. 对象的属性和方法同时被封装在一起,共同体现事物的特性,二者相辅相成, ...
- Java基础-3类和对象声明与创建
一).在1和2中有粗略介绍过类和对象的概念,在这里简单回顾一下: 对象与类:一个实际或者虚拟的物体,这个物体既是我们的对象,这个物体呢又是属于一个分类,如动物类,人类 二).创建对象: 在创建对象的时 ...
- C++_基础_类和对象2
内容: (1)构造函数 (2)初始化列表及其必要性 (3)支持自定义类型转换的构造函数 (4)this指针 (5)const对象和成员函数 (6)析构函数 1.构造函数1.1 格式: class 类名 ...
- C++语言基础(3)-类和对象
类是创建对象的模板,一个类可以创建多个对象,每个对象都是类类型的一个变量:创建对象的过程也叫类的实例化.每个对象都是类的一个具体实例(Instance),拥有类的成员变量和成员函数. 一.类的定义 一 ...
随机推荐
- Traffic Lights - SGU 103(最短路)
题目大意:有一个城市的路线图,有N个交叉点,每两个交叉点之间只有一条路,现在想从交点u去交点v,不过这个路的交通比较特别,每个路都有一个交通灯,灯有两种颜色,蓝色和紫色,例如一条路线在交点s,t之间, ...
- 黑马程序员_<<GUI(图形用户管理)-----2>>
--------------------ASP.Net+Android+IOS开发..Net培训.期待与您交流! -------------------- 8.对话框 对列出目录内容增加了对话框提示, ...
- 【设计模式 - 5】之适配器模式(Adapter)
1 模式简介 适配器模式解决的问题:让原本因为接口不兼容而不能一起工作的类可以一起工作. 适配器模式的UML原理图如下图所示: 从上图可见,客户想要用Target接口实现Adaptee接口中 ...
- 构建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统(28)-系统小结
原文:构建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统(28)-系统小结 我们从第一节搭建框架开始直到二十七节,权限管理已经告一段落,相信很多有跟上来的园友,已经 ...
- Ubuntu 14.04 没有system settings的解决方法
在我的Dell Latitude 3330上, 新装的Ubuntu 14.04一切正常,就是没有system settings程序, 以下的命令能够解决: sudo apt-get install u ...
- Vim 程序编辑器 经常使用操作
按下 i 进入编辑模式 wq! 强制保存并退出 q! 不保存,强制退出 !有强制的意思 方向键位: k h j l Ctrl + f 向下移动一页 Ctrl + b 向上移动一页 0 一行的开头 ...
- HTML5事件——contextmenu 隐藏鼠标右键菜单
在window中单击右键或在Mac中Ctrl+单击时会触发contextmenu事件,通过取消其默认动作能够提供自己定义菜单. 首先先写一个自己的菜单: <style> ul, li { ...
- C#系列之值类型和引用类型
前言 这几天一直在思考这章讨论什么, 在上一章讨论string的时候牵涉到引用类型,那么我们这一章讨论讨论一下,值类型和引用类型. 值类型和引用类型,它们的区别来源于传值方式.有人会认为值类型就存在栈 ...
- shell之“>/dev/null 2>&1” 详解(转)
今天在自己的一个技术群中又被问道了这么一个问题,于是又通俗的解释了一下,做个记录,大家看看解释是否清楚! shell中可能经常能看到:>/dev/null 2>&1 命令的结果可以 ...
- android 02 登录
activity_main.xml <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android& ...