成员变量

OC 基础知识巩固

…衆ロ難τιáo~ 提交于 2019-11-28 07:10:58
一、继承 1、继承不仅继承实例变量和属性、实例方法,还会继承类方法,所以类方法也是可以重写的。 2、在OC中,类方法可以和对象方法重名,子类中不可以定义跟父类同名的成员变量。 3、私有成员变量不能在子类中访问,但是子类中已经存在这个成员变量了,只是子类没有权限访问。所以也不能定义同名的变量。 4、受保护的成员变量在本类和子类中都可以访问,不能在外部访问。 5、在实现( @implementation )里面也可以定义实例变量,但是它是私有的,不论用什么修饰符修饰它都是私有的,即外部和子类都不能访问。 二、@property 1、@property是编译器指令,编译器会自动生成setter、getter方法 2、@synthesize 也是编译器指令,可以生成一个私有的成员变量,同时有setter、getter方法 来源: https://www.cnblogs.com/xiaonizicome/p/11398031.html

ES6

試著忘記壹切 提交于 2019-11-28 06:03:10
ECMAScript 6 目标:学习完 ES6 可以掌握方便后续的开发,未来工作中大量使用 ES6 开发 学习网站:http://es6.ruanyifeng.com ECMAScript 6 介绍 ECMAScript 6 新增语法 内置对象的扩展 ECMAScript 6 降级处理 ECMAScript 6 介绍 1.1 为什么要学习ES6 提供了更加方便的新语法弥补 JS 语言本身的缺陷,新增了便捷的语法 给内置对象增加了更多的方法 ES6 让 JS 可以开发复杂的大型项目,成为企业级开发语言 新的前端项目中大量使用 ES6 的新语法 1.2 ECMAScript 6 是什么 ECMAScript 6 又叫 ES2015,简称 ES6 ES6 是继 ES4、ES5 之后的 JS 语言规范 ES6 中增加了一些新的特性 ES6 的目标,是使得 JavaScript 语言可以用来编写复杂的大型应用程序,成为企业级开发语言 2015年6月发布 1.3 小结 ES6 是新的 JS 的代码规范,提供了一些新特性,使我们可以开发大型应用 ES6 弥补了 JS 语言本身的缺陷,增加了新语法,扩展了内置对象 ECMAScript 6 新增语法 let 和 const 解构赋值 函数 字符串扩展 数组扩展 新的定义对象的方式 2.1 let 和 const let let 定义变量

成员变量、类变量、局部变量的区别

ぃ、小莉子 提交于 2019-11-28 06:01:44
变量名首写字母使用小写,如果由多个单词组成,从第2个单词开始的其他单词的首写字母使用大写。 如果局部变量的名字和成员变量的名字相同, 要想在该方法中使用成员变量,必须使用关键字this [java] view plain copy class People { String name = "类体重定义的name"; //类中的成员变量并赋值 People(){ } public void speak() { String name = "类体方法中定义的name"; //在方法speak中定义和成员变量名字相同的name并赋值 System.out.println(name); System.out.println( this.name); //通过this来访问类中的成员变量 } } public class TestThis { //源文件中只能有一个类是public类,并且源文件的名字必须与这个类的名字完全相同,如 //果没有public类,那么源文件的名字只要和某个类的名字相同就可以了。 public static void main(String[] args) { People myPeople = new People(); myPeople.speak(); } } 输出结果: 成员变量和局部变量的区别 成员变量: 1、成员变量定义在类中,在整个类中都可以被访问。

JAVA的封装性

两盒软妹~` 提交于 2019-11-28 06:00:40
类的封装性即不能让外面的类随意修改一个类的成员变量; 在定义一个类的成员(包括变量和方法),使用private关键字说明这个成员的访问权限,只能被这个类的其他成员方法调用,而不能被其他的类中的方法所调用; 为实现封装性,常将类的成员变量声明为private,再通过public的方法来对这个变量进行访问。对一个变量的操作,一般都有 读取和赋值操作,我们一般定义两个方法来实现这两种操作,即:getXxx()与setXxx(); 一个类就是一个模块,我们应该让模块仅仅公开必须要让外界知道的内容,而隐藏其他的一切内容。再进行程序设计时,应尽量避免一个模块直接修改或操作另一个模块的数据,模块设计追求强内聚(许多功能尽量在类的内部独立完成,不让外面干预),弱耦合(提供给外部尽量少的方法调用)。 来源: http://www.cnblogs.com/qjlsharp/archive/2008/07/28/1255131.html

获取成员变量

半腔热情 提交于 2019-11-28 03:46:04
1、Class对象获取成员变量: Class类的常用方法: 创建Person类: package pers.reflect.person; public class Person { private String name; private int age; public String hobby; public String height; protected String sex; String address; public Person(){ } public Person(String name,int age){ this.name=name; this.age=age; } @Override public String toString() { return "Person [name=" + name + ", age=" + age + ", hobby=" + hobby + ", height=" + height + ", sex=" + sex + ", address=" + address + "]"; } public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() {

structure

白昼怎懂夜的黑 提交于 2019-11-28 02:12:51
不管是什么东东,理论是一部分,我个人觉得更重要的一环还是在应用上,所以在这里叙述性的东西比较少,我挑了几个关于结构体重点的部分来学习结构体,对其进行一一举例,我想通过例子,理解起来将会更容易,更准确,更深刻。 1, 有关结构体类型 结构体定义的一般形式 struct 结构体名 { 类型数据 成员名 1 ; 类型数据 成员名 2 ; ….... 成员名 ...; 类型数据 成员名 n; };// 最后一个分号标志着类型定义的结束 说明:( 1 )结构体内的成员名不能重名,但可以与结构体之外的同名 ( 2 )结构体类型占用的存储空间的字节数等于所有成员占用存储空间字节数的总和 结构体所占用的字节数 #include " iostream " using namespace std; struct date { int year ; int month; int day; }; struct list { int num; char name[ 10 ]; char sex; int age; char add[ 20 ]; float score; }; int main() { cout << sizeof ( struct date) << endl << sizeof ( struct list) << endl; } 2 ,结构体变量的引用 引用的一般形式 结构体变量名 .

java面向对象

半城伤御伤魂 提交于 2019-11-28 01:44:20
类和对象的区别 概念:类是对某一类事物的抽象描述,而对象用于表示现实中该类事物的个体 局部变量和成员变量区别 区别一:定义的位置不同 定义在类中的变量是成员变量 定义在方法中或者{}语句里面的变量是局部变量 区别二:在内存中的位置不同 成员变量存储在堆内存的对象中 局部变量存储在栈内存的方法中 区别三:生命周期不同 成员变量随着对象的出现而出现在堆中,随着对象的消失而从堆中消失 局部变量随着方法的运行而出现在栈中,随着方法的弹栈而消失 区别四:初始化不同 成员变量因为在堆内存中,所有默认的初始化值 局部变量没有默认的初始化值,必须手动的给其赋值才可以使用。 面向对象的三个特征: 封装,继承,多态。 封装: l 封装的好处: n 1、提高了代码的复用性。 n 2、隐藏了实现细节,对外提供可以访问的方式。便于调用者的使用。 n 3、提高了安全性。 private 私有: 不允许修改 this哪个对象调用了this所在的方法,this就代表哪个对象。 继承: 类的继承是指在一个现有类的基础上去构建一个新的类,构建出来的新类被称作子类,现有类被称作父类,子类会自动拥有父类所有可继承的属性和方法。 extends 继承 格式:class 子类 extends 父类 {} 特点: 当出现同名成员变量时,如果子类有,则继承子类,如果子类没有,则继承父类的 super 代表父类对象

《C++复习---类与对象【1】》

妖精的绣舞 提交于 2019-11-28 01:26:08
本节主要有以下内容: 一、类与对象的初步认知 二、类的定义 三、类的作用域 四、类的实例化 五、类的访问限定符及封装 六、类的对象大小的计算 七、类成员函数的this指针 一、类与对象的初步认知 1.类:类是现实世界或思维世界中的实体在计算机中的反映,它将数据以及这些数据上的操作封装在一起。 2.对象:对象是具有类类型的变量。 3.类与对象的关系:类是对象的抽象,而对象是类的具体实例。类是抽象的,不占用内存,而对象是具体的,占用存储空间。类是用于创建对象的蓝图,它是一个定义包括在特定类型的对象中的方法和变量的软件模板。 二、类的定义 1.类的定义 class classname { //类体:由成员函数和成员变量组成 }; //分号不能掉 【1】class为定义类的关键字; 【2】classname为类的名字; 【3】{}中为类的主体,后面必须跟分号; 【4】类中的元素称为类的成员:类中数据称为类的属性或者类的成员变量,类中的函数类的方法或成员函数。 2.类定义的两种形式 【1】声明和定义全部放在类体中: 注意:成员函数如果在类中定义,编译器可能会将其当成内联函数处理。 class operate { public: int add(int x, int y) { return x + y; } private: int a; int b; }; 【2】声明放在.h文件中

Java 类加载机制

五迷三道 提交于 2019-11-28 00:20:19
JVM进程 执行一个Java程序,实质是调用jdk\bin下的java.exe,把这个Java程序作为参数传递给java.exe,此命令会启动一个JVM进程,不管这个Java程序有多少个线程、有多复杂,这个Java程序中所有的线程、变量都处于此JVM进程中,它们使用的都是此JVM进程的内存区。 当出现以下情况时,JVM进程会被终止: 程序执行完毕,正常结束 程序中调用System.exit()或Runtime.getRuntime().exit()退出JVM,结束程序 发生错误或有未捕获、未处理的异常抛到了JVM JVM进程被OS强制结束,比如打开任务管理器,强制结束JVM 当JVM进程结束后,OS会回收此进程占用的内存,java程序在内存中所有的数据都会丢失。 不同的JVM进程是相互独立的,不同享内存(数据)。比如先运行一遍,再运行一遍,后一遍使用的不是前一遍终止时的数据,而是从头开始的。 类加载 类加载也叫类初始化,指的是:当程序要使用某个类时,如果该类还没有被加载到内存中,JVM会通过加载、连接、初始化三个步骤来对该类进行初始化。 我们习惯把这三个步骤作为一个整体,称为类加载或类初始化。 1、加载 加载指的是:JVM将该类的.class文件读到内存中,并为之创建一个java.lang.Class对象。 类是对对象的抽象,java.lang.Class是对类的抽象

C语言程序设计(十二)

浪子不回头ぞ 提交于 2019-11-27 23:57:50
第十二章 结构体和共用体 当需要表示复杂对象时,仅使用几个基本数据类型显然是不够的 根本的解决方法是允许用户 自定义数据类型 构造数据类型(复合数据类型)允许用户根据实际需要利用已有的基本数据类型来构造自己所需的数据类型 它们是由基本数据类型派生而来的,用于表示链表、树、堆栈等复杂的数据对象 抽象数据类型不再单纯是一组值的集合,还包括作用在值集上的操作的集合 即在构造数据类型的基础上增加了对数据的操作,且类型的表示细节和操作的实现细节是对外不可见的 结构体类型数据存储的优点: 结构紧凑,易于管理 局部数据的相关性强,便于查找 赋值时只针对某个具体的对象,局部的输入错误不会影响全局 结构体:对关系紧密、逻辑相关、具有相同或者不同属性的数据进行处理 共用体:数据成员的情形是互斥的,每一时刻只有一个数据成员起作用 结构体模板的定义格式: struct 结构体名 { 数据类型 成员1的名字; 数据类型 成员2的名字; …… 数据类型 成员n的名字; }; 结构体的名字,称为结构体标签 构成结构体的变量,称为结构体成员 结构体模板只是声明了一种数据类型,定义了数据的组织形式,并未声明结构体类型的变量 typedef定义数据类型: typedef用于为系统固有的或程序员自定义的数据类型定义一个别名 typedef int INTEGER; typedef struct student