Struct与Static的区别与联系?

在C#的基础学习中,我对结构和方法总是容易混淆,一来二者长的太像,容易敲错;二来对它们的概念和用法理解不深,容易混淆。今天特此写篇博客来说明他们之间的区别与联系,写的不对的地方,还望网友指正:

Struct结构

1、为什么要用结构?

①、如果要存储一个人的信息,就要定义一组变量。那么我们就要存储n个人的信息,就要声明n个变量,这样比较麻烦。使用结构就会使编写程序更加方便。

②  、存储一个人信息的这几个变量间没有关系,容易混乱。

2、Struct语法:

访问修饰符 struct 结构名

{

定义结构成员

}

注意:一般情况下,结构定义在命名空间下。

3、实例:

namespace struct与static

{

//定义一个结构

public struct person

{

//结构的成员

public string name;

public string sex;

public int age;

}

class Program

{

static void Main(string[] args)

{

person person1;//定义第一个人的信息

person1.name = "张三";

person1.sex = "男";

person1.age = 20;

person person2;//定义第一个人的信息

person2.name = "李四";

person2.sex = "女";

person2.age=37;

//省略以下!

//这样定义多个人的信息的时候就比较方便了!

Console.WriteLine("{0}是{1}生,他今年{2}岁了!",person1.name, person1.sex,person1.age);

Console.WriteLine("{0}是{1}生,他今年{2}岁了!",person2.name, person2.sex,person2.age);

Console.ReadKey();

}

}

}

Static方法

1、功能:用来复用代码。当我们在一个程序中反复用到同样的代码,那么我们可以把复用的代码定义在一个方法中,用的时候只需要调用就行了,方便了程序的编写。

2、Static语法:

访问修饰符 [ static ] 返回值类型 方法名()

{

方法体

}

注意:①、一般情况下,方法定义在类中。

②、如果方法没有返回值,则返回值类型写void

③、方法名开头大写,参数名开头小写。参数和变量要有意义。

④、return 可以立即退出方法。

3、实例:

namespace@static

{

class Program

{

static void Main(string[] args)

{

//在其他方法中调用person方法

Person();

Console.ReadKey();

}

//定义一个名字为person的方法

public static void Person()

{

//方法体

string name = "王五";

string sex = "男";

int age = 34;

Console.WriteLine("{0}是{1}生,他今年{2}岁了!",name,sex,age);

}

}

}

心得:经过此次总结,我感觉struct和static的关系一下子明了了许多,对他们俩的用法也理解了。

如有不当之处,欢迎批评指正。原创作品,请勿抄袭。谢谢配合。

黑马程序员-Struct与Static的区别与联系?相关推荐

  1. 黑马程序员——堆和栈的区别(转载)

    ------ Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- 转自:http://www.cnblogs.com/Kevin_z/archive/2010/ ...

  2. 黑马程序员--c#中break_continue_return__goto_throw的区别

    ------- Windows Phone 7手机开发..Net培训.期待与您交流! ------- c#中break,continue,return,,goto,throw的区别 break     ...

  3. 黑马程序员,黑马论坛--------枚举和单例设计模式的区别

    文章来源:黑马程序员,黑马论坛 枚举和单例设计模式的区别,黑马面试有的 public class Test11 { public static void main(String[] args) {   ...

  4. 【黑马程序员 C++教程从0到1入门编程】【笔记4】C++核心编程(类和对象——封装、权限、对象的初始化和清理、构造函数、析构函数、深拷贝、浅拷贝、初始化列表、友元friend、运算符重载)

    黑马程序员C++教程 文章目录 4 类和对象(类属性[成员属性],类函数[成员函数]) 4.1 封装 4.1.1 封装的意义(三种权限:public公共.protected保护.private私有)( ...

  5. 【黑马程序员 C++教程从0到1入门编程】【笔记1】数据类型、运算符、程序流程结构、数组、函数、指针、结构体

    黑马程序员匠心之作|C++教程从0到1入门编程,学习编程不再难 文章目录 1.C++初识 1.1 第一个c++程序 1.2 注释 1.3 变量 1.4 常量 1.5 关键字 1.6 标识符命名规则 2 ...

  6. 黑马程序员C语言基础(第五天)运算符与表达式、程序流程结构、数组和字符串、函数

    https://www.bilibili.com/video/BV15W411K7k6?p=93&spm_id_from=pageDriver 黑马程序员C语言基础(第五天)运算符与表达式.程 ...

  7. 黑马程序员C++笔记

    C++ 课程链接: 黑马程序员匠心之作|C++教程从0到1入门编程,学习编程不再难_哔哩哔哩_bilibili 一.C++基础语法 1.变量和常量数据 1.1第一个C++程序 编写一个C++程序总共分 ...

  8. 黑马程序员 C++ 基础语法入门 学习记录

    基础语法入门 文章目录 一.初识C++ 1.1 新建项目 1.2 编写项目 1.3 运行程序 1.4 注释 1.5 变量 1.6 常量 1.7 关键字 1.8 标识符命名规则 二.数据类型 2.1 整 ...

  9. 黑马程序员C++学习笔记<第一阶段_基础篇>

    配套视频网址: 黑马程序员:http://yun.itheima.com/course/520.html?bili B站:https://www.bilibili.com/video/BV1et411 ...

最新文章

  1. php zblog 侧边栏样式_zblogphp版如何实现导航栏下拉框
  2. docker pull时候太慢卡死
  3. 小巨型计算机应用什么领域,计算机应用基础 10
  4. python2.7配置tensorflow1.5.0和keras2.1.6
  5. STM32L0开发——ADC多通道采集,IDE和IAR开发注意事项
  6. 读书笔记_大话数据结构第九章_排序
  7. 【Luogu】P1896互不侵犯King(状压DP)
  8. Hazelcast入门指南第3部分
  9. 计算机管理可以更新吗,微信可以批量管理好友吗(电脑版微信3.0.0更新规则了)...
  10. 怎么让队友变成绿色的名字_“吃鸡”进入游戏后,发现队友在玩手机,他到底是怎么做到的?...
  11. 学习笔记(02):MySQL数据库运维与管理-03-状态变量及查看方法
  12. PostgreSQL在何处处理 sql查询之八
  13. 整理了一些DataGrid ColumnStyle
  14. 为什么有人把《海贼王》当作人生信条
  15. jq json格式化工具
  16. 考研高等数学张宇30讲笔记——第十一讲 多元函数微分学
  17. CloudFlare Full SSL Strict 报错提示 Error 525 SSL handshake failed
  18. 网络:bit、Byte、bps、Bps、pps、Gbps的单位详细说明及换算。
  19. 闭包及作用域销毁练习
  20. gentoo 下Local time zone must be set--see zic manual page解决办法[原创]

热门文章

  1. 傅里叶变换的虚数部分
  2. 四十三、项目实战—阿里百秀
  3. 云计算介绍之网络介绍
  4. 2019全球智博会开幕在即,百度无人车、腾讯多个产品将亮相 | 智博会...
  5. Android的数据库 SQLite数据库:SQLite
  6. 姚劲波 58同城创始人
  7. 树莓派搭建nas历程记录
  8. java gui 开发工具_用什么工具进行java GUI的开发?
  9. 核苷酸类化合物库 脂类化合物库参与细胞调控
  10. USB转TTL 下载线 线序定义