1217.2——定义一个类+方法声明调用

新建一个类

  new file  ->cocoa class  (父类NSObject)

  .h文件 用来定义属性和方法

  .m文件 用来具体实现



方法声明:

1 #import <Foundation/Foundation.h>
2  @interface Person : NSObject{
3     NSString *name;
4     int age;
5     NSString *address;
6 }
7 -(void)useTools;  //无参无返回值的方法声明
8 -(void)setName:(NSString *)aName   age:(int)aAge;  //有参无返回值的声明
9 @end

1.  age为标签,用来说明后面函数的作用

2.  -符号,为实例方法,必须实例化一个对象,用对象调用

+符号,为类方法,无需实例化一个对象,可以直接类本身调用

3.  成员变量写在{}中,方法写在{}外,end之前

4.  所有声明的方法必须实现



方法的调用

 1 #import <Foundation/Foundation.h>
 2 #import "Person.h"
 3
 4 int main(int argc, const char * argv[]) {
 5     @autoreleasepool {
 6         Person *hr = [[Person alloc]init];
 7         [hr setName:@"hr" age:22];
 8         [hr useTools];
 9     }
10     return 0;
11 }

1.  #import "Person.h"  引入头文件

2.  Person *hr = [[Person alloc]init];分配内存并初始化空间

3.  []表示message,让谁做什么

4.  [hr setName:@"霍然" age:22];标签优势

时间: 2024-11-05 16:05:50

1217.2——定义一个类+方法声明调用的相关文章

C#1(.net和C#的关系、VS与.net的对应关系、VS2012常用的几种应用程序、C#定义一个类的方法、类页面内容的解释、定义Person的类、调用Person类的方法、命名规范、数值类型)

1..net和C#的关系 .net是一个开发平台,C#是应用在.net平台上的一种语言.   2.VS与.net的对应关系  3.VS2012常用的几种应用程序 第一种是Windows窗体应用程序,也即是我们常用的C/S端的应用软件: 第二种是控制台应用程序,主要是用来学习调试C#代码的(老师上课应用的模式): 第三种是空Web应用程序,建立空的网页模式,B/S模式: 第四种是Web 窗体应用程序,建立后会生成一些常用的网页组件和功能,例如JS.image等,也是B/S模式. 4.C#定义一个类

Java TreeSet集合排序 &amp;&amp; 定义一个类实现Comparator接口,覆盖compare方法 &amp;&amp; 按照字符串长度排序

package TreeSetTest; import java.util.Iterator; import java.util.TreeSet; import javax.management.RuntimeErrorException; /* 可以对set集合中的元素进行排序,其底层的数据结构是二叉树, 保证元素唯一性的依据是compareTo和return 0; TreeSet排序的第一种方式 让元素自身具备比较性 元素需要实现Comparable接口,覆盖compareTo方法 这种方式

自己实现一个Native方法的调用

JNI 开始本篇的内容之前,首先要讲一下JNI.Java很好,使用的人很多.应用极广,但是Java不是完美的.Java的不足体现在运行速度要比传统的C++慢上许多之外,还有Java无法直接访问到操作系统底层如硬件系统,为此Java提供了JNI来实现对于底层的访问.JNI,Java Native Interface,它是Java的SDK一部分,JNI允许Java代码使用以其他语言编写的代码和代码库,本地程序中的函数也可以调用Java层的函数,即JNI实现了Java和本地代码间的双向交互. Nati

面向对象定义一个类

1定义一个类格式:public class 类名{类体},能编译不能运行类名首字母必须大写,以后每个单词首字母大写2定义属性和声明变量一样格式:属性类型 属性名;,属性名首字母小写以后每个单词首字母大写属性类型可以是任意类型(基本数据类型和引用数据类型,比如String)3.定义方法格式 public void 方法名(参数){语句(方法体)}方法名首字母小写以后每个单词首字母大写 注意事项:类里只能有属性和方法(方法块,代码块),语句必须写到方法里 4.定义对象:类名 对象名 = new 类名

ExtJs--07--Ext.define定义一个类的过程

Ext.onReady(function(){ //Ext定义一个类 Ext.define( "Person", { config:{ name:"jack", age:22 }, fangfa:function(){ Ext.Msg.alert("标题信息","提示内容信息") } , constructor:function(config){ //测试构造器调用没有及参数传递进来没有 // for(var attr in

定义一个类:实现功能可以返回随机的10个数字,随机的10个字母, 随机的10个字母和数字的组合;字母和数字的范围可以指定,类似(1~100)(A~z)

#习题2:定义一个类:实现功能可以返回随机的10个数字,随机的10个字母, #随机的10个字母和数字的组合:字母和数字的范围可以指定 class RandomString(): #随机数选择的范围作为参数,如(1~100)字母 ('A'~'z'),大写字母在前 按ascii值排列先后 def __init__(self,start_num=0,end_num=100,start_alpha='A',end_alpha='z'): import string if not isinstance(s

如何定义一个类——单一职责原则

单一职责原则:就一个类而言,应该仅有一个引起他变化的原因. 1 一个老师类的例子 或者说在外部看来,一个类只应该能看到它的类的相关功能.如老师类只应该负责教授知识,备课,但是不应该负责开车.切合实际的说一个TaskService类不应该包含处理时间的类,他可以是private的,但是肯定不能是public的.这里引出另一个角度 2 如何看待一个类? 2.1通常的看法 通常的看法是,类是由成员属性和成语方法组成的数据结构或者是现实事物的抽象如对现实中的人抽象出Person,他具备人的基本属性和基本

定义一个类Point,代表一个点,public属性有x和y,方法有显示点坐标 show(),构造函数有两个参数分别给x,y赋值,在main方法中构造两个对象,再创建一方法(getMiddle)为取两个点构成线段的中点的坐标,参数为2个点对象,调用此方法后得到一个新的点,编写Application,显示该对象的坐标值。

这个题让我更加明白了类创建对象的实质 代码中用到:1.对象作形参;2.对象作返回值 以下用代码具体分析: 1 class Point1{ 2 public double x; 3 public double y; 4 Point1(){} 5 6 public Point1(double x,double y){ 7 this.x=x; 8 this.y=y; 9 } 10 11 public void show(){ 12 System.out.println("x="+x+&quo

按要求编写一个Java应用程序: (1)定义一个类,描述一个矩形,包含有长、宽两种属性,和计算面积方法。 (2)编写一个类,继承自矩形类,同时该类描述长方体,具有长、宽、高属性, 和计算体积的方法。 (3)编写一个测试类,对以上两个类进行测试,创建一个长方体,定义其长、 宽、高,输出其底面积和体积。

package jvxing; public class Jvxing { //成员变量 private double width; private double chang; public double getWidth() { return width; } public void setWidth(double width) { this.width = width; } public double getChang() { return chang; } public void setC