A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 殘遛の丶狳味 中级黑马   /  2013-8-2 08:23  /  1834 人查看  /  10 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

字段和变量有什么区别呢

10 个回复

正序浏览
字段存在堆上,而int 类型的变量存在栈上,字段不能覆盖,要赋值系统就会另开辟空间,原来的字段还在内存中,
而int类型的变量就可以覆盖原来的值,呵呵,新手,说的不好请谅解。
回复 使用道具 举报
我认为简单理解字段是出现在类或者结构中的,是对象的属性,变量是栈中的一个存储单元,可以指向堆中一个内存位置的引用类型,也可以自己存储值类型。不知道这样理解对不对
回复 使用道具 举报
变量就是可以给其赋值的。但其值是唯一的。除非重新给变量赋值。也就是说变量在某一时刻只能拥有一个值。 字段就是相当于一个可以拥有多个值得变量。字段可以同时拥有多个值。
回复 使用道具 举报

祝 赶快走完流程, 女生好少呀:lol
回复 使用道具 举报
彭家贰小姐 发表于 2013-8-2 11:51
int number; 我们经常说申请了一个内存空间
number是个变量,代码你在内存中圈了一块区域,你给这个区域取名 ...

:)嗯 恍然大悟
回复 使用道具 举报
int number; 我们经常说申请了一个内存空间
number是个变量,代码你在内存中圈了一块区域,你给这个区域取名叫number

这个区域在内存中有个很复杂的内存地址,但我们可以不用这个内存地址,直接用变量名称[number]向内存 存/取 数据.
number = 100;
以上就是变量的概念,所谓字段:
跟类有关系了,我先定义一个Person
  1. class Person
  2. {
  3. private int age; //这个是字段
  4. public int Age //这个是属性
  5. {
  6. get { return age; }
  7. set
  8. {
  9. if (value < 0)
  10. {
  11. return;
  12. }
  13. age = value;
  14. }
  15. }
  16. }
复制代码
至于对象,类,属性...的概念建议看

课程不多但讲解的很详细

评分

参与人数 1技术分 +1 收起 理由
赵宗荣 + 1

查看全部评分

回复 使用道具 举报 1 0
字段是一种特殊的变量,字段在结构中使用。
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;

  5. namespace ConsoleApplication1
  6. {

  7.     public struct Person
  8.     {
  9.         public string _name;
  10.         public int _age;
  11.         public char _gender;
  12.     }

  13.     class Program
  14.     {
  15.         static void Main(string[] args)
  16.         {
  17.             //声明一个结构类型的变量
  18.             Person zhangsan;
  19.             zhangsan._name = "张三";
  20.             zhangsan._age = 20;
  21.             zhangsan._gender = '男';
  22.             //声明另外一个结构类型的变量
  23.             Person lisi;
  24.             lisi._name = "李四";
  25.             lisi._age = 19;
  26.             lisi._gender = '女';
  27.             //声明变量并赋值
  28.             string name = "张三";
  29.             int age = 20;
  30.             char gender = '男';
  31.             //给变量重新赋值
  32.             name = "李四";
  33.             age = 19;
  34.             gender = '女';

  35.             Console.WriteLine("姓名:{0},年龄:{1},性别:{2}", zhangsan._name, zhangsan._age, zhangsan._gender);
  36.             Console.WriteLine("姓名:{0},年龄:{1},性别:{2}", lisi._name, lisi._age, lisi._gender);
  37.             Console.WriteLine("姓名:{0},年龄:{1},性别:{2}", name, age, gender);

  38.             Console.ReadKey();
  39.         }
  40.     }
  41. }
复制代码
回复 使用道具 举报
字段可以同时存储多个值,而变量只能存储一个值。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马