OC 变量作用域

 #import <Foundation/Foundation.h>

@interface Person : NSObject

   {

   int _age; //@interface中变量默认是@public

   @protected

    int _height;   //只能在当前类和子类的对象方法中访问

   @pritate

    int _weight; //只能在当前类的对象方法中才能直接访问

   @package

   NSString *_name;//只能在当前框架内使用

  }

-(int) age;

-(void) setAge:(int)age;

-(int) height;

-(void) setHeight:(int)height;

-(int) weight;

-(void) setWeight:(int)weight;

-(NSString *)name;

-(void) setName:(NSString *)name;

@end

@implementation Person

   {

   NSString *birthday;//@implementation中变量默认是@private

   }

-(int) age

{

  return -age

}

-(void) setAge:(int)age

{

-age=age;

}

-(int) height

{

return _height;

}

-(void) setHeight:(int)height

{

-height=height;

}

-(int) weight

{

return _weight;

}

   -(void) setWeight:(int)weight

 {

  _weight=weight;

 }

-(NSString *)name

{

return _name;

}

-(void) setName:(NSString *)name

{

_name=name;

}

@end

1  @public (公开的)在有对象的前提下,任何地方都可以直接访问。

2  @protected
(受保护的)只能在当前类和子类的对象方法中访问

3  @private
(私有的)只能在当前类的对象方法中才能直接访问

4  @package (框架级别的)作用域介于私有和公开之间,只要处于同一个框架中就可以直接通过变量名问。

 5 @interface中的声明的成员变量默认是public,@implatation中声明的成员变量默认是private

时间: 2024-10-10 12:04:25

OC 变量作用域的相关文章

OC点语法和变量作用域

OC点语法和变量作用域 一.点语法 (一)认识点语法 声明一个Person类: 1 #import <Foundation/Foundation.h> 2 3 @interface Person : NSObject 4 { 5 int _age;//默认为@protected 6 } 7 8 - (void)setAge:(int)age; 9 - (int)age; 10 11 @end Person类的实现: 1 #import "Person.h" 2 3 @imp

OC 点语法和变量作用域

一.点语法 (一)认识点语法 声明一个Person类: 1 #import <Foundation/Foundation.h> 2 3 @interface Person : NSObject 4 { 5 int _age;//默认为@protected 6 } 7 8 - (void)setAge:(int)age; 9 - (int)age; 10 11 @end Person类的实现: 1 #import "Person.h" 2 3 @implementation

黑马程序员—OC点语法和成员变量作用域

一.点语法 1.OC中点语法是方便从事别的语言开发的程序员迅速的转到OC开发当中,先看下面这个例子: 1 // 声明一个Person类 2 @interface Person : NSObject 3 { 4 int _age; 5 NSString *_name; 6 } 7 - (void)setAge:(int)age; 8 - (int)age; 9 @end 10 11 // 实现Person类 12 @implementation Person 13 - (void)setAge:(

黑马程序员------OC之点语法、成员变量作用域、@property和@synthesize

-----iOS培训.Android培训.Java培训,期待与您交流----- OC之点语法.成员变量作用域.@property和@synthesize 一.点语法 1)点语法基本概念:当我们使用面向对象的封装特性后,将成员变量私有化,采取使用setter方法和getter方法向外面提供成员变量访问方案.那么我们知道,OC的调用方法的方式是很独特的,采用的是 [对象名(类名)  方法名]  的方式 ,那么很多Java.C#程序员就不习惯了,在Java.C#这些主流的面向对象语言中,调用方法的方式

Objective-C语言-点语法和变量作用域[email&#160;protected] @synthesize和id

  一.点语法 (一)认识点语法 声明一个Person类: #import <Foundation/Foundation.h> @interface Person : NSObject { int _age;//默认为@protected } - (void)setAge:(int)age; - (int)age; @end Person类的实现: #import "Person.h" @implementation Person - (void)setAge:(int)a

js的变量,变量作用域,作用域链

变量声明: 使用var关键字声明,如果使用没有声明的变量,则JS会自动声明此变量根据变量作用域.如果变量只声明为赋值,则此时值是undefined.重复声明变量,在JS不会报错,会依据最后一次的声明来处理变量. 变量作用域: 一个变量的作用域是,程序代码定义这个变量的区域,全局变量在程序代码内任何地方都可以访问. 包括在{}函数,对象内的变量(属性)成为局部变量. 在函数体内定义的变量成为局部变量,作用域也是局部,函数参数也是局部变量. 他们只在函数体内有意义. 在函数体内,局部变量优先于全局变

Sass学习笔记 -- 变量及变量作用域历史遗留问题

sass有两种后缀名文件: 一种后缀名为sass,写选择器时不能使用大括号和分号 一种后缀名为scss,使用大括号和分号 //后缀名为sass的语法,不能出现大括号和分号 $highlight-color: #abcdef .selected   border: 1px $highlight-color solid    //后缀名为scss的语法,跟css一样,需要大括号和分号 $highlight-color: #abcdef; .selected{   border:1px solid $

Java基础知识笔记(七:接口、变量作用域和参数传递)

一.接口 Java语言不允许一个子类拥有多个直接父类,即任何子类只能有一个直接父类.但允许一个类实现多个接口,即在定义类的接口名称列表中可以包含1个或多个接口名称,从而实现多重继承的特性.接口的定义格式如下: [接口修饰词列表] interface 接口名 [extends 接口名称列表] { 接口体 } 接口修饰词列表可以包含0个.1个或者多个接口修饰词.如果存在多个接口修饰词,则在相邻两个接口修饰词之间采用空格分隔开.接口修饰词包括:public.abstract和strictfp等.在同一

less的结构嵌套和变量作用域

<!DOCTYPE html> <html lang="en"> <head>     <meta charset="UTF-8">     <title></title>     <style type="text/less">         /*         结构嵌套和变量作用域         样式的结构可以像html结构来一样嵌套,并对应其样式.