C#入门教程

目录

1.if分支语句

2.面向对象

3.static简单说明


1.if分支语句

我们的这个C#里面的if语句以及这个if-else语句和C语言里面没有区别,就是打这个输出上面的方式不一样,c#里面使用的是这个console.writeline这个指令,其他的这个判断逻辑都是一样的,因此我在这里就不再赘述了;

2.面向对象

下面的这个是我们面向过程的一个实例,这个是我们之前使用的一个方式,尤其是最开始学习这个C语言的时候,就是面向过程的:

基于这个例子,我们上面的这个实际上就是定义了两个变量,一个变量就是我们的大侠,一个变量就是我们的女侠,他们各自都有自己的一些属性,但是这个属性的数值是不一样的;

例如这个名字,技能伤害,身高,基础的伤害等等,我们每一次想要输出的时候,都要这个变量的名字不一样,例如我们的大侠的名字,我们定义的是name1,这个时候我们的女侠的名字就是name2,就是两个名字不可以一样,而且我们需要把这个变量定义两次;

我们首先去要去实例化一个对象,我们的这个大侠就是一个类,有男大侠和女大侠,这个时候我们的男大侠就是一个对象,女大侠也是一个对象,两个对象都有这个名字,性别,伤害,攻击力等属性,这个时候,我们就可以把这些公共的属性放到一个类里面去;

然后我们使用我们创建的对象,再去定义对应的属性,hr就是女大侠,hr.mingzi 就是女大侠的名字,这个就是面向对象的思想,把相同的属性封装成为一个类,把这些属性定义到这个类里面去,然后实例化对象,每一个对象都有这个类里面的属性特征,进而进行各自的定义;

这样的好处就是我们的这个变量不要定义很多,因为我们把这个变量放到类里面去了,我们可以直接调用,需要注意的就是我们的这个类里面的属性需要设置为共有的public,不然实例化之后我们没有办法访问这个属性;

这个new就是进行定位类的实例化操作,其中这个hero()里面的这个就类似于C++里面的构造函数,可以这样理解,这样我们就有了自己的内存空间

3.static简单说明

static修饰的内容我们可以简单的划分为两个部分:一个就是修饰这个变量,一个就是修饰我们的函数;

先来聊一聊这个static修饰变量吧,这个变量就是我们定义在class这个类里面的,准确的讲应该叫做属性,我们需要把这个类实例化为对象之后才可以进行访问,这个实例化之后才会为这个属性变量开辟内存空间,但是对于这个static修饰的变量而言,相当于程序执行之后就会直接开辟空间,无论我们是否进行类的实例化,对于这个都是没有影响的;

static修饰的函数也是的,因为函数被这个static修饰了之后,我们的空间就被开辟了出来,这个时候函数里面只能去调用这个static变量,因为其他的普通的变量需要实例化之后才有自己的空间,我们这个时候没有办法直接对他们进行调用;

什么时候使用static呢---我们的每一个对象都要使用这个变量属性,这个时候每一个对象的这个属性都是不一样的,这样的话我们的这个属性就不可以使用static了,如果是没有什么关系的变量,我们就可以加上static,这个时候我们就可以直接访问;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/432960.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【优选算法】(第四篇)

目录 三数之和(medium) 题目解析 讲解算法原理 编写代码 四数之和(medium) 题目解析 讲解算法原理 编写代码 三数之和(medium) 题目解析 1.题目链接:. - 力扣(LeetCode&…

鸿蒙开发(NEXT/API 12)【基础功能(使用剪贴板进行复制粘贴)】剪贴板服务

场景介绍 [剪贴板]为开发者提供数据的复制粘贴能力。 当需要使用复制粘贴等功能时&#xff0c;例如&#xff1a;复制文字内容到备忘录中粘贴&#xff0c;复制图库照片到文件管理粘贴&#xff0c;就可以通过剪贴板来完成。 约束限制 剪贴板内容大小<128MB。为保证剪贴板数…

【Java】Java中String、StringBuilder、StringJoiner详解

目录 引言 一、String 1.1 String的定义 1.1.1 直接赋值 1.1.2 new关键字创建 1.2 常用方法 1.3 字符串的不可变性 1.4 字符串内存的存储原理 二、StringBuilder 2.1 常用方法 2.2 动态扩容策略 2.3 使用场景 三、StringJoiner 3.1 构造方法 3.2 常用方法 3.3…

【图像处理】多幅不同焦距的同一个物体的平面图象,合成一幅具有立体效果的单幅图像原理(二)

实现多幅不同焦距图像合成一幅具有立体效果的图像可以使用以下算法和开源库&#xff1a; 实现算法 图像对齐 使用特征点匹配&#xff08;如 SIFT、SURF 或 ORB&#xff09;来对齐图像。利用 RANSAC 算法剔除离群点&#xff0c;估计变换矩阵。 深度图生成 基于图像的焦距和视角…

信息安全工程师(19)HASH函数与数字签名

一、Hash函数 1、定义 Hash函数&#xff0c;又称散列函数或哈希函数&#xff0c;是一种将任意长度的输入&#xff08;称为预映射或消息&#xff09;通过散列算法变换成固定长度输出&#xff08;称为散列值或哈希值&#xff09;的函数。这种转换是单向的&#xff0c;即不能从哈…

使用python爬取豆瓣网站?如何简单的爬取豆瓣网站?

1.对python爬虫的看法 首先说说我对python的看法&#xff0c;我的专业是大数据&#xff0c;我从事的工作是java开发&#xff0c;但是在工作之余&#xff0c;我对python又很感兴趣&#xff0c;因为我觉得python是一门很好的语言&#xff0c;第一&#xff1a;它可以用来爬取数据…

ROS与无人驾驶学习笔记(一)——ROS基本操作

文章目录 ※ 安装ubuntu 下载 创建虚拟机 安装系统 安装vmware tool 更新源 安装常用软件 ※ 安装ROS 设置软件更新 使用清华源安装 ros测试 认识ROS ROS特点 ROS系统实现 ROS安装 工作需要&#xff0c;转行做码农了。。。 大概是无人驾驶相关的&#xff0c;啥都不会。。。 看成…

arthas简单应用

背景说明 项目上某个接口响应时间过长&#xff0c;需要查看方法耗时情况进行优化 安装配置 访问下载页进行下载&#xff1a;下载 | arthas 调整文件位置进行解压缩 - 查看arthas帮助命令&#xff08;非必须&#xff0c;官网文档更详细&#xff09; C:\tools\arthas\4.0.1\b…

IvorySQL 3.4 来了

9 月 26 日&#xff0c;IvorySQL 3.4 发版。本文将带大家快速了解新版本特性。 IvorySQL 3.4 发版说明 IvorySQL 3.4 基于 PostgreSQL 16.4&#xff0c;修复了多个问题&#xff0c;并增强多项功能。 PostgreSQL 16.4 的变更 在未经授权时防止 pg_dump 执行&#xff0c;并引入一…

MMD模型一键完美导入UE5-VRM4U插件方案(一)

1、下载pmx模型 1、去模之屋官网下载MMD模型,模之屋 2、下载完成得到pmx和Texture文件 2、下载并启用VRM4U插件 1、下载VRM4U插件, VRM4U,点击Latest下载对应引擎版本 2、将插件放到Plugins目录,然后

Git GUI操作流程

1&#xff0c;点击运行 Gt GUI 2&#xff0c;界面如下 3&#xff0c;点击Creat new Repository或者在菜单栏点击Repository--new 4,点击Browse选择目录&#xff0c;点击create&#xff0c;创建本地git仓库 5&#xff0c;对应盘里生成一个.git文件&#xff0c;用于版本管理 6&am…

随记——机器学习

前言 本来有个500块钱的单子&#xff0c;用机器学习做一个不知道什么鸟的识别&#xff0c;正好有数据集&#xff0c;跑个小项目&#xff0c;过一下机器学习图像识别的流程&#xff0c;用很短的时间记录下来..... 一、数据预处理 将数据集分为训练集和测试集&#xff0c;直接…

基于SpringBoot校园失物招领系统设计与实现

文未可获取一份本项目的java源码和数据库参考。 本课题的作用、意义&#xff0c;在国内外的研究现状和发展趋势&#xff0c;尚待研究的问题 作用&#xff1a;本课题的目的是使失物招领信息管理清晰化&#xff0c;透明化&#xff0c;便于操作&#xff0c;易于管理。通过功能模…

vue3 选择字体的颜色,使用vue3-colorpicker来选择颜色

1、有的时候我们会用到颜色的选择器&#xff0c;像element-plus提供了&#xff0c;但是ant-design-vue并没有&#xff1a; 这个暂时没有看到&#xff1a; 但是Ant Design 5的版本有&#xff0c;应该不是vue的。 2、使用第三方提供的vue3-colorpicker&#xff1a;storybook/cli…

【Gitee自动化测试3】Git的本地使用,和在Gitee上使用

一. 创建版本库 存放项目&#xff0c;项目的删除更改&#xff0c;版本库都能够监控。 创建一个文件夹&#xff08;不要包含中文路径&#xff09;&#xff0c;右键选择Git Bash Here&#xff08;打开Git终端&#xff09; 输入git init 对文件夹进行版本库的初始化&#xff0c;…

【CSS】背景

background-color 颜色background-image 图像background-size 缩放background-repeat 平铺background-position 定位background-clip 裁剪区域background-origin 开始区域background-attachment 滚动方式 background-color 颜色 <style>div{width: 200px;height: 100px;…

LeetCode - 850 矩形面积 II

题目来源 850. 矩形面积 II - 力扣&#xff08;LeetCode&#xff09; 题目描述 给你一个轴对齐的二维数组 rectangles 。 对于 rectangle[i] [x1, y1, x2, y2]&#xff0c;其中&#xff08;x1&#xff0c;y1&#xff09;是矩形 i 左下角的坐标&#xff0c; (xi1, yi1) 是该…

【机器学习】探索LSTM:深度学习领域的强大时间序列处理能力

目录 &#x1f354; LSTM介绍 &#x1f354; LSTM的内部结构图 2.1 LSTM结构分析 2.2 Bi-LSTM介绍 2.3 使用Pytorch构建LSTM模型 2.4 LSTM优缺点 &#x1f354; 小结 学习目标 &#x1f340; 了解LSTM内部结构及计算公式. &#x1f340; 掌握Pytorch中LSTM工具的使用. &…

【react案例】实现评论列表

1. 需求 展示评论列表实现删除功能 2.1 只有自己的评论才展示删除按钮 2.2 点击删除按钮&#xff0c;删除当前评论tab切换&#xff08;点击对应tab&#xff0c;对tab文案高亮处理&#xff09;评论高亮评论排序&#xff08;最新、最热&#xff09; 2. 实现思路 useState维护评…

【小程序】uniapp自定义图标组件可动态更换svg颜色

组件描述 通过图标名称加载对应svg&#xff0c;size参数调整图标大小&#xff0c;color参数调整图标颜色 解决思路&#xff1a; 存svg获svg&#xff0c;对象方式正则替换svg的fill值&#xff0c;不改变源文件&#xff0c;通过base64直接加载缓存svg源文件&#xff0c;避免重…