面试-1-C#浅解
面试-1
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。
来自 <https://www.cnblogs.com/wangzheand/p/4897337.html>
面试-1-C#浅解的更多相关文章
- 从最大似然到EM算法浅解
从最大似然到EM算法浅解 zouxy09@qq.com http://blog.csdn.net/zouxy09 机器学习十大算法之中的一个:EM算法.能评得上十大之中的一个,让人听起来认为挺NB的. ...
- GIS历史概述与WebGis应用开发技术浅解
声明:本篇在李晓晖的<杂谈WebGIS>,补充更多的资料说明.基于地图二次开发一直断断续续在做,这里算是补充一下基本功把.其实对于前端,WebGis开发都是api,抄demo,改.GIS深 ...
- List根据某字段去重,以及compareTo 浅解
原文链接:https://blog.csdn.net/qq_35788725/article/details/82259013 Collections.sort可对集合进行排序 根据List里面某个字 ...
- Java面试宝典答案详解与感悟(第一天)
一.Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语法,集合的语法,io 的语法,虚拟机方面的语法. 1.一个".java&quo ...
- JVM中GC浅解:垃圾回收的了解
1.为什么要有GC 没有GC的世界,我们需要手动进行内存管理,但是内存管理是纯技术活,又容易出错.但是我们写码的目的是为了解决业务问题,所以可以把这种纯技术活自动化,当然自动化也是有代价的. 2.垃圾 ...
- Vuex state 状态浅解
对于Vuex中的state里面的理解总是有些欠缺,机制似乎理解了.但是还有很多的不足,在这就先浅谈下自己的理解. vuex 机制中,定义了全局Store,在各个vue组件面的this.$store指向 ...
- Rest_framework Serializer 序列化 (含源码浅解序列化过程)
目录 Rest_framework Serializer 序列化 序列化与反序列化中不得不说的感情纠葛 三角恋之 save/update/create 四角恋之 序列化参数instance/data/ ...
- Rest_framework Router 路由器(含SimplyRouter源码浅解)
目录 Rest_framework Router 路由器 ViewSet结合Router,自动生成url. 将ViewSet注册到Router中,需要三个要素: 关于路由规则,细分有四类: rest_ ...
- Java之泛型浅解
我觉得学习一个东西,首先得从概念上明白它大概是什么? “泛型”就是“参数化类型”,也就是是把类型当成了一种参数.之前我们看到得函数方法比如: public long add(int num1,int ...
随机推荐
- python中os模块讲解
本文主要介绍一些os模块常用的方法: 先看下我的文件目录结构 D:\LearnTool\pycode\part1 在此目录下的文件如下: abcd.py demo1.1.py demo1.2.py z ...
- .NET中常见的加解密方式
在互联网普及的初期,人们更关注单纯的连接性,以不受任何限制地建立互联网为最终目的.正如事情都具有两面性,互联网的便捷性给人们带来了负面问题,计算机病毒的侵害.信息泄露.网络欺诈等利用互联网的犯罪行为日 ...
- 【04】在webstorm里Export declarations are not supported by current JavaScript version
[04]在webstorm里Export declarations are not supported by current JavaScript version Export declara ...
- NYOJ 745 蚂蚁的难题(二)
蚂蚁的难题(二) 时间限制:1000 ms | 内存限制:65535 KB 难度:3 描述 下雨了,下雨了,蚂蚁搬家了. 已知有n种食材需要搬走,这些食材从1到n依次排成了一个圈.小蚂蚁对每种 ...
- 贴一下我写过的c++程序代码
5258 #include <iostream>#include <iomanip>#include <cmath>using namespace std;clas ...
- Web开发细节搜集
App_Data 百度百科: App_Data文件夹应该包含应用程序的本地数据存储.它通常以文件(诸如Microsoft Access或Microsoft SQL Server Express数据库 ...
- HDU-1392 Surround the Trees,凸包入门!
Surround the Trees 此题讨论区里大喊有坑,原谅我没有仔细读题还跳过了坑点. 题意:平面上有n棵树,选一些树用绳子围成一个包围圈,使得所有的树都在这个圈内. 思路:简单凸包入门题,凸包 ...
- sql自动审核工具-inception
[inception使用规范及说明文档](http://mysql-inception.github.io/inception-document/usage/)[代码仓库](https://githu ...
- Android网络编程之HttpClient运用
Android网络编程之HttpClient运用 在 Android开发中我们经常会用到网络连接功能与服务器进行数据的交互,为此Android的SDK提供了Apache的HttpClient来方便我们 ...
- golang并发编程goroutine+channel(一)
go语言的设计初衷除了在不影响程序性能的情况下减少复杂度,另一个目的是在当今互联网大量运算下,如何让程序的并发性能和代码可读性达到极致.go语言的并发关键词 "go" go dos ...