成员变量

结构体

本小妞迷上赌 提交于 2020-03-08 12:16:12
结构体 一、结构体类型与结构体变量的定义 使用结构体表示数据: 1.定义结构体类型 2.定义结构体类型的变量 3.引用结构体变量的各成员变量 相比简单的变量的定义,这一过程需要先自定义结构体类型。 注: 1.结构定义并不预留内存,它只是一个模板 2.结构定义放置在程序的开始部分,位于头文件声明之后。 3结构定义仅描述了一个结构的形式。如果要在程序里使用结构,需要声明结构变量。 定义结构之后,声明变量。 声明变量的形式: ①先定义结构,再声明结构变量: struct student { int num ; char name [ 20 ] ; float score ; } ; struct student student1 , student2 ; ②在定义结构类型的同时声明结构变量: struct student { int num ; char name [ 20 ] ; float score ; } ; student1 , student2 ; ③直接声明结构变量: struct { int num ; char name [ 20 ] ; float score ; } ; student1 , student2 ; 嵌套结构及引用: 结构体类型的成员也可以是另一个结构体类型 二、结构体类型变量成员的引用 引用结构体类型变量成员的一般形式: 结构体类型变量名.成员名--

Objective-c快速入门

风流意气都作罢 提交于 2020-03-08 04:21:51
对象(Class)的声明和定义 和其他的语言不同,OC的对象创建分为两个部分。声明部分(@interface)和实现部分(@implementation),且它们都必须使用@end结束。 对象的声明(OC中基本上所有的对象都继承自NSObject): @interface Car : NSObject { int _wheels; NSString *_color; } - (void)run; + (void)playMusic; @end 对象的实现: @implementation Car -(void)run { NSLog(@"The %@ car that has %d wheels is running...", _color, _wheels); } + (void)playMusic { NSLog(@"music palying..."); } @end @interface代码块的作用: 成员变量的声明和方法的声明。成员变量必须在花括号中声明。而方法则在花括号和@end之间声明 默认情况下成员变量的可访问性为protected。 @implementation代码块的作用: 用于方法的定义(实现)。以减号开头的方法属于实例方法,以加号开头的方法属于类方法。 @implementation部分同样可以声明成员变量,但是由于在多文件编译中.m文件不能被import

第七次发博不知道用什么标题好

核能气质少年 提交于 2020-03-07 02:15:01
一、this关键字,想起之前总是搞不懂this.name是where.name,嗯!第二个name就是形参name,所以这句话就是讲形参name的值传给成员变量name private void setName(String name ){   this.name=name; } 二、构造方法:1.没有返回值        2.名称要与本类名称相同(但是参数不一样,体现在 类型、个数、顺序)        3.如果不写构造函数,系统会自动生成无参无函数体的构造函数        4.构造方法的作用:为成员变量赋值        5.每个类至少有一个构造方法 来源: https://www.cnblogs.com/shi-yuan/p/10703700.html

语言中结构体变量和结构体类型的定义

让人想犯罪 __ 提交于 2020-03-06 13:43:49
1. 结构体类型定义 定义方式1 : Typedef struct LNode { int data; // 数据域 struct LNode *next; // 指针域 } *LinkList; 定义方式2 : struct LNode { int data; // 数据域 struct LNode *next; // 指针域 } ; Typedef struct LNode *LinkList; 以上两个定义方式是等价的,是将*LinkList 定义为struct LNode 类型,即LinkList 被定义为一个类型名。这样就可以用LinkList 来定义说明新的变量了,如: LinkList L ; 即将L 定义为struct LNode 类型的指针变量 2. 结构体类型变量定义 定义方式1 : struct LNode { int data; // 数据域 struct LNode *next; // 指针域 }LnodeA ; 定义方式2 : struct LNode { int data; // 数据域 struct LNode *next; // 指针域 } ; struct LNode LnodeA ; 以上两个定义方式也是等价的,这样就将LnodeA 定义为一个truct LNode 类型的变量,即LnodeA 为一个truct LNode 类型的变量名。

成员变量、局部变量、实例变量、静态变量、类变量、常量

一个人想着一个人 提交于 2020-03-06 03:48:06
成员变量: 直接在类中声明的变量叫成员变量(又称全局变量) ▲ 初始化: 如果未对成员变量设置初始值,则系统会根据成员变量的类型自动分配初始值:int分配初始值0、boolean分配初始值false,而自定义类型则分配初始值null ▲作用范围: 成员变量定义后,其作用域是其所在的整个类。且成员变量的定义没有先后顺序,但是最好将成员变量的定义集中在类的顶部。 public class Field { static int v ; //定义int类型数据 static double w ; //定义double类型数据 static char x ; //定义char类型数据 static boolean y ; //定义boolean类型数据 static String z ; //定义String类型数据 public static void main ( String [ ] args ) { System . out . println ( v ) ; //输出0 System . out . println ( w ) ; //输出0.0 System . out . println ( x ) ; //输出空,实质上此时x的值为0 System . out . println ( y ) ; //输出false System . out . println ( z ) ;

JavaSE!面向对象!!!!

情到浓时终转凉″ 提交于 2020-03-06 03:21:27
1. 面向对象的编程思想: 面向对象的编程思想就是把一个事物看成一个整体,把这个事物中的属性(特征)和功能(方法)表述出来。 面向对象的编程思想更贴近于人的正常思维方式。 面向对象的编程思想来源于生活服务于生活。 面向对象的编程思想中,一定会用到面向过程(以流程为基本单位,注重最后结果。)的编程思想。有缺陷:功之间有很强的关联。不利于程序的维护和扩展。 面向对象的特征: 抽象!! 封装!! 继承!! 多态!! 。 2. 对象 在现实生活中,具体存在的一个事物。 在java编程中,万事万物皆对象。 特点: 在java编程中,无论两个事物多么相近或是相似,他们永远都是两个不同的对象。 各种法律、规则制度也是一种对象。 对象的内存图解 1 1.在堆内存中开辟一个空间并分配地址 2.按照类的描述,在该空间中定义成员变量 并且有默认初始化值 3.加载成员函数进入方法区(只加载一次) 4.对象创建完毕 将空间地址赋值给相应的变量 5.变量(p1/p2)调用成员变量 先通过该变量所存储的地址去堆空间中找 然后在该空间中找相应的成员变量 6.变量(p1/p2)调用成员函数 直接去方法区中找该成员函数 将该函数加载进栈内存开始运行 为了方便区分哪个对象调用的该成员函数 由this这个关键字段 来区分 this主要存的是当前对象的地址 注意:当成员函数在操作变量的时候 先在当前函数的空间里找 局部变量

java基础4(static、super与this、final)

倾然丶 夕夏残阳落幕 提交于 2020-03-05 16:19:26
一.static 用来修饰的成员变量和成员方法 被修饰的成员是属于类,而不是单单是属 于某个对象的。 既然属于类,就可以不靠创建对象来调用了 1.1 定义和使用 1.1.1.类变量 修饰的成员变量 static 数据类型 变量名; public class Student { private String name; private int age; // 学生的id private int sid; // 类变量,记录学生数量,分配学号 public static int numberOfStudent = 0; public Student(String name, int age){ this.name = name; this.age = age; // 通过 numberOfStudent 给学生分配学号 this.sid = ++numberOfStudent; } // 打印属性值 public void show() { System.out.println("Student : name=" + name + ", age=" + age + ", sid=" + sid ); } } public class StuDemo { public static void main(String[] args) { Student s1 = new Student(

复合数据类型

喜夏-厌秋 提交于 2020-03-05 11:40:54
c++语言的内置复合类型 ●指针、引用、数组、结构体、枚举 ●标准库类型string c++的数据类型: 结构体的定义: 定义结构体变量格式如下: struct 结构体类型名 变量名列表; 也可以把结构体类型声明和变量定义合在一起,格式如下: struct 类型名{ 数据类型1 成员名1; 数据类型2 成员名2; … }变量名; 结构体的使用: 万能头文件: 扩展: 运算符重载: 成员函数: 来源: CSDN 作者: FlatLife 链接: https://blog.csdn.net/FlatLife/article/details/104668223

PHP的抽象类、接口的区别和选择

眉间皱痕 提交于 2020-03-05 09:58:37
区别: 1、对接口的使用是通过关键字implements。对抽象类的使用是通过关键字extends。当然接口也可以用extends继承。 2、接口中不可以声明成员变量(包括类静态变量),但是可以声明类常量。抽象类中可以声明各种类型成员变量,实现数据的封装。(另JAVA接口中的成员变量都要声明为public static final类型) <?php abstract class Father { function meth1() { echo "meth1...<br>"; } abstract function meth2(); public $var1="var1"; public static $var2="var2"; const Var3="Var3"; } class Son extends Father { function meth2() { echo "meth2 of Son...<br>"; } } $s=new Son(); echo $s->var1."<br>"; echo Father::$var2."<br>"; echo Father::Var3."<br>"; Interface IFather { //public $iVar1="iVar1"; 此处接口定义中不能包含成员变量 //public static $iVar2="iVar2";

5.4 final修饰符

北城余情 提交于 2020-03-04 12:44:32
目录 简介 一、final成员变量(类变量、实例变量) 二、final局部变量 三、final修饰基本类型变量和引用类型变量的区别 四、可执行“宏替换”的final变量 五、final方法 六、final类 七、不可变(immutable)类 八、缓存实例的不可变类 简介 final关键字可以用于 修饰类、方法、变量 ,用于表示它修饰的类、变量、方法不可以改变。 final修饰变量时,表示该变量一旦获得初始值就不可以被改变,final既可以修饰成员变量(包括类变量和实例变量),也可以修饰局部变量、形参。 由于final变量获取初始值后不能被重新赋值,因此final修饰成员变量和局部变量有一定不同。 一、final成员变量(类变量、实例变量)   成员变量时随着类初始化或对象初始化而初始化的。当类初始化时,系统会为之分配内存空间,并分配初始值;当创建对象时,系统会为该实例变量分配内存,并分配默认值。因此当执行类初始化块时,可以对类变量赋值;当执行普通初始化块、构造器时可对是变量赋初始值。 因此成员变量可在定义该变量时指定默认值,也可以在初始化块、构造器中指定初始值。 final修饰的成员变量必须由程序员显示地指定初始值 ★类变量:必须在静态初始化块中指定初始化值或声明该类变量时指定初始值,而且只能在这两个地方的其中1之一。 ★实例变量:必须在非静态初始化块