C#浅解
众所周知c#是微软推出的一款完全没面向对象的编程语言,那么对象是什么?
在现实生活中人们一提到对象首先想到的就是“情侣”!但是在我们的程序中对象是什么? 在程序中个能够区别于其他事物的独立个体我们称它为对象他是类的一个实例。那么现在问题来了 ,你说对象是类的实例。那类又是什么?好 在程序中类是多个对象的统称他是对象的模版规定了对象所具有的行为(方法)和静态特征(字段)。这是有人可能会问“是先有类还是先有对象?”关于这个问题我们就要分情况讨论了第一种情况:在现实生活中最早的时候人类的智力还不是很发达他们不知道给一些事物分类但那些事物是真真确确存在的所以是先有对象再有类!但是,我们在变成的时候必须要先定义出一个类之后才能实例化出这个类的对象!
现在我们已经知道了C#是一门面向对象的编程语言并且知道了类和对象的关系那C#语言到底长什么样?请看图片
所有的逻辑代码都要写在方法内那么什么是方法?就如上图的Main方法只不过它是程序的入口方法我们也可以自己定义方法那怎么定义呢?他的语法如下:
访问修饰符(public) 返回值类型(void) 方法名(){//里面写逻辑代码}
注意:如果方法没有返回值时必须用void的修饰
那么返回值的类型有哪些呢?他可以是我们自定义的类接就是应用类型和C#的基本值类型 在C#中基本的值类型有以下几种:1.整型: int 值:1
2.浮点型: float 值:1.2f
3.双精度: double 值:1.234
4.字符型: char 值:‘我’
5.布尔: bool 值:真
在认识了C#中的数据类型之后我们再来想一个问提:它们都是怎麽来用的,语法如下:
数据类型 变量名 =值;
好那我怎么才能在控制台看到我倒底赋值成功了吗?我们来认识一下C#中的两个方法:
1.Console.WriteLine:();//输出并换行
2.Console.Write();//输出不换行
我们将自己定义的变量来入到这两个方法中运行之后看控制台上显示的是不是我们想要的值就可以了
嘿嘿 看到了吗? 什么你的控制台闪一下就没了看不清!
好吧。我们再来认识一个方法:
Console.ReadLine();//想控制台接受一个字符串
有了这个方法之后控制台就会为你停留了而且它还可以接受你从控制台输入的字符并返回给程序一个字符串!
那如果我想接收一个int类型的数据时该怎么办呢?我们再来认识一个方法
数据类型.Parse();它可以将一个字符串转换成其他类型如将从控制台接收的字符串转换成int类型:int.Parse(Console.ReadLine());
在认识了基本的数据类型和方法之后我们再来看一下C#中的选择结构和循环结构
在C#中选择结构有两种一种是If选择结构一种是switch选择结构值得注意的是在C#中switch选择结构的每个case块后只要有语句就必须加break。
在C#中我们认识了一个新的循环结构:foreach循环结构它是专门用来遍历数组的语法如下:
foreach(元素类型 元素变量 int 数组名)
{
//代码块
}
既然说它是用来遍历数组的那数组又是什么?
数组是多个变量的统称 他可以把多个同类型的值贮存在一个数组中
前面我们已经知道了C#的一些常用的数据类型但是还有一种数据类型也经常用到他就是string 它是C#程序员自定义的类所以它是引用类型 而且他有很多强大的放法能够为我们编写代码是提供很多便利 大家可以去微软提供的MSDN上查询在这里主要所以下==号和Equals的区别:
Equals比较的是内容而==号比较的是内存地址那么什么是内存地址?
如图:当你定义一个字符串时他就会在内存中做两件事
第一在对内存中开辟一块空间并生成一个内存地址
第二在栈内存中开辟一块空间贮存在堆内存中生成的地址并指向对内存中的地址且给开辟的空间命名为name。
以上就是我对C#的一些简单的理解 给点个赞吧!
简单认识C#
时间: 2024-10-11 11:41:52
简单认识C#的相关文章
C# Ping 简单使用
编程过程中,有时候需要判断主机是否在线,最简单的方法就是使用Windows的Ping命令看看能否ping通.看到网上很多文章,说用C#去调用windows的ping.exe,然后解析返回的字符串.我觉得这种方式太麻烦了,就做一下简单判断,不想弄那么麻烦. 查了一下,C#专门提供了一个Ping类,与Windows下的ping命令类似: 命令空间: System.Net.NetworkInformation; 使用方法: bool online = false; //是否在线 Ping ping =
自动生成简单四则运算的C语言程序
该程序是在博客园里面找的,具体是谁的找了半天没找到,无法提供它原本的链接.由于自己写的过于简单,且有一些功能暂时无法实现,所以就找了一个来应付作业,望原谅.在这个程序的源码中我改了一个错误的地方,源码中有这样一个随机数发生器的初始化函数的语句:"srand((unsigned)time(NULL))".srand函数是随机数发生器的初始化函数.但是正确的写法应该是:srand(unsigned( time(NULL))):为了防止随机数每次重复,常常使用系统时间来初始化,即使用time
Mysql的锁机制与PHP文件锁处理高并发简单思路
以购买商品举例: ① 从数据库获取库存的数量. ② 检查一下库存的数量是否充足. ③ 库存的数量减去买家购买的数量(以每个用户购买一个为例). ④ 最后完成购买. 仅仅这几行逻辑代码在并发的情况下会出现问题,自己可以想象一下. 这里暂时就不测试了,下面会针对并发的处理给出测试结果. 创建表: CREATE TABLE `warehouse` ( `id` int(11) NOT NULL AUTO_INCREMENT COMMENT 'id', `stock` int(11) NOT NULL
Winfrom 简单的安卓手机屏幕获取和安卓简单操作
为啥我要做这个东西了,是因为经常要用投影演示app ,现在有很多这样的软件可以把手机界面投到电脑上 ,但都要安装,比如说360的手机助手,我又讨厌安装,于是就自己捣鼓了下 做了这个东西, 实现了以下简单功能 1.屏幕获取(因为是截图方式获取的,所以有点卡顿) 2.实现点击功能,并在点击的时候出现一个手势图标,方便用户观看 3.实现简单的滑动功能 4.实现在界面上画图功能 5.实现拖拽安装apk功能 操作说明:鼠标左边 模拟手机点击,中键停止/开始刷新界面(画图的时候不能刷新),右键去掉画图内
iOS instruments之ui automation的简单使用(高手绕道)
最近使用了几次instruments中的automation工具,现记录下automation的简单使用方法,希望对没接触过自动化测试又有需求的人有所帮助. UI 自动测试是iOS 中重要的附加功能,它由名为"Automation"的新的工具对象支持.Automation工具的脚本是用JavaScript语言编写,主要用于分析应用的性能和用户行为,模仿/击发被请求的事件,利用它可以完成对被测应用的简单的UI测试及相关功能测试. 一. 简单的录制脚本 打开xcode,这里用我为我家亲爱
Android ExpandableListView 带有Checkbox的简单应用
expandablelistview2_groups.xml <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height=&qu
Android ExpandableListView的简单应用
Expandablelistview1Activity.java package com.wangzhu.demoexpandablelistview; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import android.app.Activity; import android.os.Bundle; import android.widg
一个简单的主机管理模拟程序
最近写的一个小练习,主要是把前面学的东西整合一下.写了一个简单的主机管理界面,主要是练习以下知识点: Session和Cookie进行登录验证(装饰器) 数据库的基本操作 (单表,1对多,多对多) Form的简单使用实现验证 Bootstrap模板写个简单界面 自定义分页 信号,中间件,CSRF,模板语言,JavaScript,AJAX等等 界面比较low,毕竟不是专业的. 附件里面是Django的源代码,3个文件放在一起winrar解压就可以打开
简单介绍一下vue2.0
Vue Vue是用于构建用户界面的渐进框架.作者尤雨熙特别强调它与其他的框架不同,Vue是渐进式的框架,可以逐步采用,不必一下就通过框架去重构项目. 另外Vue的核心库只专注于视图层,这样就更容易与其他库或现有项目进行集成,也更灵活. Vue在兼容性上不支持IE8以下版本的浏览器,用到了ECMAScript 5的功能,所有支持ECMAScript 5的浏览器都没问题,像这些: 安装 如果你已经熟悉并安装webpack那可以直接装一个CLI版即命令行工具,快速方便. $ npm install -
简单利用filetype进行文件上传
对于文件上传大家都很熟悉了,毕竟文件上传是获取webshell的一个重要方式之一,理论性的东西参考我的另一篇汇总文章<浅谈文件解析及上传漏洞>,这里主要是实战补充一下理论内容--filetype漏洞! filetype漏洞主要是针对content-type字段,主要有两种利用方式: 1.先上传一个图片,然后将content-type:image/jpeg改为content-type:text/asp,然后对filename进行00截断,将图片内容替换为一句话木马. 2.直接使用burp抓