C#基础之——命名空间、类、方法、变量的声明赋值和相关知识以及.NETC#关系讲解

  • 对应视频4-1至4-7
  • 1.引入命名空间:
  • 2.引入类、方法
  • 3.变量的声明赋值
  • 4.综合小练习
  • 5. .NET的介绍与C#
  • 6.变量

本博文为 贪玩巴斯整理B站 达内教育—— Unity3D 2017版本 的 课堂笔记和PPT记录

欢迎关注我的微信公众号:
编程之蓁 ID:bianchengzhizhen
及时分享算法、计算机科学以及游戏编程内容

微信公众号同样也能查看学习笔记喔~

本人CSDN博客主页:
贪玩巴斯
欢迎互相交流学习


对应视频4-1至4-7

1.引入命名空间:

  1. 命名空间语法:

// 字面意思:正在使用 XX命名空间;
// 引入命名空间

using System;

// 如果没有写这个引入命名空间那么下面的语句就必须写成:

 System.Console.Title = "";

// 如果只使用一次的可以不用写System,为了避免下面麻烦重复写。

  1. 命名空间含义:

// 命名空间 —— 对类进行逻辑上的划分,避免重名
// 定义命名空间 —— [类的住址],这个空间就是类的存储的地址
// 一个命名空间下的类,不能够重名
// 一般来讲,命名空间都不会重复

2.引入类、方法

3.变量的声明赋值

4.综合小练习

namespace Day01
{// 定义类 [做工具]class MainClass{// 定义方法 [做功能]// main 程序的入口方法public static void Main1(string[] args){// 程序从本行开始执行// 括号内的统称为 [语句]// 自上而下逐句执行// Ctrl A 全选// Ctrl K F 调整格式// ctrl K C 选中注释// ctrl K U 取消注释// 注释,给程序员读的// 代码,给计算机读的// 控制台.标题 = “内容”Console.Title = "贪玩巴斯的第一个程序"; // 控制台.写一行(“hello world”)// 现象:在控制台中显示括号内的文本// 作用:将 括号内的 文本 写到 控制台中了。Console.WriteLine("请输入您的姓名:");// 控制台.读一行// 现象:暂停程序(按回车继续)// 作用:将 用户在控制台中输入的文本 读取到程序中来string name = Console.ReadLine();Console.WriteLine("您好:" + name);Console.ReadLine(); // 让程序在本行暂停// = 赋值号:将右边的结果 复制一份 给左边// 写代码 .cs -> 生成 -> exe(在bin文件夹中) -> 运行// Console 是 类 [工具]// WriteLine / ReadLine 是方法 [动词的功能]// Title 是属性 [名词的修饰]// 图标中,p是属性,m是方法// 类.方法();    调用语句[使用某个类中的功能]// 到本行结束// 2022年1月26日// 声明string gunName;// 赋值gunName = "AK47";// 声明 + 赋值int age = 18;//在同一范围内,变量不能重复声明//string gunName;// 变量可以重复赋值gunName = "MP5";// 变量在使用前必须赋值Console.WriteLine(age);}static void Main() {// 4-6// 调试:排除错误的能力——人人都要具备——查看程序运行时,各个变量的取值// 1.在可能出错的行 加断点// 2.按F5    启动调试// 3.按F11   逐语句执行// 4.按shift + F5 停止调试float num01 = 1.0f;float num02 = 0.9f;float result = num01 - num02;bool b1 = result == 0.1f;Console.WriteLine(b1);// 结果:false// IBM面试题 —— 浮点型运算会出现舍入误差//二进制无法精确表示1/10, 就像十进制无法精确表示1/3, 所以二进制表示十进制会有一些舍入误差,对于精度要求较高的场合会导致代码的缺陷,可以使用decimal代替// 改进版//decimal num01 = 1.0m;//decimal num02 = 0.9m;//decimal result = num01 - num02;//bool b1 = result == 0.1m;//Console.WriteLine(b1);// 结果:true// 命名必须用英文,用软件查// 练习:// 在控制台中,录入枪的信息// 请输入枪的名称:// 请输入弹夹的容量// 请输入当前弹夹内子弹数量:// 请输入剩余子弹数量:// 在一行显示:// 枪的名称是: xxx,弹夹容量:xxx,弹夹子弹数:xx,剩余子弹数:xxConsole.WriteLine("请输入枪的名称:");string gunName = Console.ReadLine();Console.WriteLine("请输入弹夹的容量:");string ammoCapacity = Console.ReadLine();// 变量名不怕长,但是怕没有意义Console.WriteLine("请输入当前弹夹内子弹数量:");string currentAmmoBullets = Console.ReadLine();Console.WriteLine("请输入剩余子弹的数量:");string remainBullets = Console.ReadLine();Console.WriteLine("枪的名称是:" + gunName + ", 弹夹容量:" + ammoCapacity + ", 弹夹子弹数:" + currentAmmoBullets + ", 剩余弹夹子弹的数量:" + remainBullets);Console.ReadLine(); // 让程序暂停}}
}

5. .NET的介绍与C#

  • .net dotnet

  • Microsoft 新一代多语言的开发平台 用于构建和运行应用程序。

  • C# csharp

  • Csharp 是 Microsoft 专为.NET这个开发平台,推出的高级编程语言。

  • 从语言技术、风格、严谨性等特点上来说,C#可成为诸多编程语言中最为优秀的一款,甚至由它而引发出计算机语言界中的多种新规范和新特征。

  • 版本
    2002年2月13日发布1.0版本
    2003年4月24日发布1.1版本
    2005年11月7日发布2.0版本
    2006年11月6日发布3.0版本
    2007年11月19日发布3.5版本
    2010年4月12日发布4.0版本
    2011年9月20日发布4.5版本

  • mono

  • Novell公司支持在其他操作系统下开发.net 程序的框架。

  • Unity借助mono实现跨平台,核心是.net Framework 框架。底层仍然是C++。

  • 最早Microsoft推出.net 同时专门为他设计了C#。所有软件只能运行在.net的Microsoft中,而因此生成了Mono,来实现在别的操作系统上运用.net。

  • 这个关系可能出现在笔试题中。

  • Visual studio 首先创建一个解决方案 参考视频4-1 16分钟

  • 在解决方案中右键创建 新建项目

  • 位置和解决方案默认放在一起

  • program.cs 为代码文件

6.变量

变量

  • 思考

  • 程序运行在哪里? —— 内存

  • 程序处理的是什么? —— 数据

  • 内存中开辟的一块用于存储数据的空间 —— 变量!

  • 内置数据类型

  • 放数据的容器

  • 容量的单位:
    位bit(比特):电脑记忆体中的最小单位,每一位可以代表0或者1的。
    字节Byte:电脑中存储的最小单位。
    1Byte=8bit
    1KB=1024Byte
    1MB=1024KB
    1G=1024MB
    网速10M指的是Mbps(兆位/秒)是速率单位,换算成字节应该是 10/8 = 1.25兆字节/秒

  • 整型(整数)

  • 1个字节:有符号sbyte(-128127),无符号byte(0255) 8位数,有符号的只有7个位来表示数字

  • 2个字节:有符号short(-3276832767),与无符号ushort(065535)

  • 4字节:有符号int,无符号uint 选int,因为够用,不需要考虑其他方面的影响

  • 8字节:有符号long,无符号ulong 8字节的已经足够了

  • 非整型(小数
    4字节:单精度浮点类型float,精度7位。 1.2f——位置坐标都是float类型
    8字节:双精度浮点类型double,精度15-16位. 1.2d
    16字节:128位数据类型decimal,精度28-29位,适用于财务和货币计算。 1.2m

  • 注意事项:
    1.非整形变量赋值要加上后缀,如果不加默认为double。
    2.浮点型运算会出现舍入误差:
    bool number = 1.0f -0.9f == 0.1f;
    进制无法精确表示1/10,就像十进制无法精确表示1/3,
    所以二进制表示十进制会有一些舍入误差,对于精度要求较高的场合会导致代码的缺陷,可以使用decimal代替。

  • 非数值型——英文字符,中文,数字和符号 数据前后必须加单引号
    char 字符,2字节,存储单个字符,使用单引号。
    string 宇符串,存储文本,使用双引号.
    bool 类型,1字节,可以直接赋值true真false假,或者赋表达式做判断。

【贪玩巴斯】Unity初学圣经Part2-C#基础——Day 01:C#基础之——命名空间、类、方法、变量的声明赋值和相关知识以及.NETC#关系讲解 2022年3月28日相关推荐

  1. 相互宝正式宣布将于2022年1月28日关停

    12月28日下午,相互宝正式宣布,将于2022年1月28日关停. 相互宝表示,2018年底相互宝上线以来,1亿多成员互帮互助,在自身获得保障的同时救助了179127名患病成员,给予他们战胜病魔的希望和 ...

  2. 2022年4月28日 复盘计划

    昨天下班之后,owner给我打电话说我所负责的模块,上了环境之后,既报400又报500,没法用~让我明天早点看,10点之前完成bug修复,否则算任务完不成,回退版本~~~吓得我很慌,一晚上睡不着&qu ...

  3. 东软始业教育结业考试2022年7月28日

    一.单选题(本类题共50小题,共50分) 1 安全事件分为三级,下述哪一项不属于分级类别? 1分/1分 A.一般安全事件 B.特别安全事件 C.严重安全事件 D.重大安全事件 提交答案:B正确答案:B ...

  4. 微信小程序获得用户头像昵称调整(2022年9月28日修改)

    最近修改概要 主要关于 wx.getUserProfile() 接口和 wx.getUserInfo() 接口获得用户头像昵称的修改 微信小程序官方发布的公告 https://developers.w ...

  5. 2022年5月28日软考高项四川总结

    1: 在四川考点有:直属考点和成都考点 直属考点唯一一个是:四川大学锦城学院仁爱楼(41X30=1230) 其余皆是成都考点: 四川城市职业学院(6030=1800), 四川爱华学院(6030=180 ...

  6. pmp每日三题(2022年2月28日)

    今日三题答案-BAB 1.在与客户进行设计讨论期间,一个所需的功能被认定为过时.客户的项目经理同意可以将其从项目范围中删除.项目经理下一步应该怎么做? A. 从项目范围中删除这一项 B. 遵循正式的变 ...

  7. 2022年6月28日

    此时为22时33分,一个很快乐的时间,但我却是拖着疲惫不堪的手指来敲下人生的第一篇博客. 今天是学习C语言的第一天,是学习游泳的第一天,也是学车的第一天.我今天走了很多路,废了很多心思,高考失利的阴影 ...

  8. 2022年7月28日(CSS三大特性、盒子模型)

    目录 一.CSS的三大特性 1.1 层叠性 1.2 继承性--简化代码 行高的继承 1.3 优先级 二.盒子模型 2.1 盒子模型 盒子模型的组成: (1)边框(border) (2)内边距(padd ...

  9. 【历史上的今天】4 月 28 日:人工智能理论之父出生;大众点评上线;苹果开设 iTunes 音乐商店

    整理 | 王启隆 透过「历史上的今天」,从过去看未来,从现在亦可以改变未来. 今天是 2022 年 4 月 28 日,在 1994 年的今天,美国克林顿政府公布了一项价值数百万美元的计划,以帮助那些制 ...

最新文章

  1. cmder默认的命令提示符λ改成$
  2. amazon alexa_在Amazon Alexa上推出freeCodeCamp编码琐事测验
  3. 移动项目开发笔记(管理不同解决方案下的DLL文件相互引用之心得体会)
  4. 朗锐智科发布PCIe-3504PoE 千兆以太网图像采集卡
  5. 前端实现3d效果_前端动画效果实现的简单比较
  6. 交换机IP-MAC地址绑定
  7. 预处理语句--#define、#error和#warning
  8. 将Alfred与BetterZip整合,提高你的Mac工作效率
  9. 选择日期弹框html,JS——点击文本框弹出选择日期表格
  10. 东营网站服务器部署,联通东营服务器dns地址
  11. win7性能服务器,性能大改善,微软Win10版本ca18301909即将推出,网友为何仍坚持win7?...
  12. Oracle中动态SQL详解(EXECUTE IMMEDIATE)
  13. DAOs(去中心化自治组织)
  14. requests模块下
  15. 1、二进制安装k8s
  16. python数组列表添加一行一列np.rowstack()np.column_stack()
  17. HTML5+CSS期末大作业:宠物网站设计——宠物猫(10页) DIV+CSS宠物网页设计代码
  18. 广告深度学习计算:阿里妈妈智能创意服务优化
  19. CANoe学习入门到精通
  20. pdf格式怎么转换excel表格?分享3个免费PDF转Excel方法

热门文章

  1. 微信分享笔记(第二版)
  2. 夏至已至!看看各大品牌的海报是怎么做的
  3. 【秋招机试真题】网易笔试0919
  4. 由损失函数设计原理,重理解交叉熵推导
  5. 双减”风暴将至:学科类培训机构十大转型之路
  6. 基于AI算法在城市道路路面病害检测应用
  7. RTL8139的linux源代码分析
  8. 约瑟夫坎贝尔 《千面英雄》阅读笔记
  9. Android之模拟信号示波器
  10. 【FME-HOW-TO系列】11 从栅格转换为矢量