面试-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#浅解的更多相关文章

  1. 从最大似然到EM算法浅解

    从最大似然到EM算法浅解 zouxy09@qq.com http://blog.csdn.net/zouxy09 机器学习十大算法之中的一个:EM算法.能评得上十大之中的一个,让人听起来认为挺NB的. ...

  2. GIS历史概述与WebGis应用开发技术浅解

    声明:本篇在李晓晖的<杂谈WebGIS>,补充更多的资料说明.基于地图二次开发一直断断续续在做,这里算是补充一下基本功把.其实对于前端,WebGis开发都是api,抄demo,改.GIS深 ...

  3. List根据某字段去重,以及compareTo 浅解

    原文链接:https://blog.csdn.net/qq_35788725/article/details/82259013 Collections.sort可对集合进行排序 根据List里面某个字 ...

  4. Java面试宝典答案详解与感悟(第一天)

    一.Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语法,集合的语法,io 的语法,虚拟机方面的语法. 1.一个".java&quo ...

  5. JVM中GC浅解:垃圾回收的了解

    1.为什么要有GC 没有GC的世界,我们需要手动进行内存管理,但是内存管理是纯技术活,又容易出错.但是我们写码的目的是为了解决业务问题,所以可以把这种纯技术活自动化,当然自动化也是有代价的. 2.垃圾 ...

  6. Vuex state 状态浅解

    对于Vuex中的state里面的理解总是有些欠缺,机制似乎理解了.但是还有很多的不足,在这就先浅谈下自己的理解. vuex 机制中,定义了全局Store,在各个vue组件面的this.$store指向 ...

  7. Rest_framework Serializer 序列化 (含源码浅解序列化过程)

    目录 Rest_framework Serializer 序列化 序列化与反序列化中不得不说的感情纠葛 三角恋之 save/update/create 四角恋之 序列化参数instance/data/ ...

  8. Rest_framework Router 路由器(含SimplyRouter源码浅解)

    目录 Rest_framework Router 路由器 ViewSet结合Router,自动生成url. 将ViewSet注册到Router中,需要三个要素: 关于路由规则,细分有四类: rest_ ...

  9. Java之泛型浅解

    我觉得学习一个东西,首先得从概念上明白它大概是什么? “泛型”就是“参数化类型”,也就是是把类型当成了一种参数.之前我们看到得函数方法比如: public long add(int num1,int ...

随机推荐

  1. BZOJ 2508: 简单题

    题目大意: 加入直线,删除直线,求点到所有直线的距离的平方和. 题解: 把点到直线的距离公式写出来,然后展开.维护六个值,计算一个二元的多项式的最小值. 对x和y分别求导,导数都为零时取到极值.然后解 ...

  2. 在web中绘制图像 -- canvas篇

    汗,不小心点击发布了.其实正在编辑中...... HTML Canvas是现代浏览器中非常棒的绘图技术,Canvas可以绘制图形,操作图片,制作游戏,创建动画等:Canvas是很容易使用的,下面我们来 ...

  3. 九度oj 题目1159:坠落的蚂蚁

    题目描述: 一根长度为1米的木棒上有若干只蚂蚁在爬动.它们的速度为每秒一厘米或静止不动,方向只有两种,向左或者向右.如果两只蚂蚁碰头,则它们立即交换速度并继续爬动.三只蚂蚁碰头,则两边的蚂蚁交换速度, ...

  4. SPOJ GSS3 Can you answer these queries III ——线段树

    [题目分析] GSS1的基础上增加修改操作. 同理线段树即可,多写一个函数就好了. [代码] #include <cstdio> #include <cstring> #inc ...

  5. [luoguP2325] [SCOI2005]王室联邦(树分块乱搞)

    传送门 想了半小时,没什么思路.. 看了题解,是个叫做树分块的奇奇怪怪的操作.. 题解 树分块的研究 #include <cstdio> #include <cstring> ...

  6. CF dp 一句话解题

    wyq说刚入门oi 或是遇到瓶颈的时候就刷DP吧,虽然觉得这么刷CF题有点浪费,但是还是挺爽的,按照solved排序做的,前面的题都挺水的(忘记记录了混蛋),就不写了,从5C开始写解题 CF5 C. ...

  7. 【树状数组区间修改区间求和】codevs 1082 线段树练习 3

    http://codevs.cn/problem/1082/ [AC] #include<bits/stdc++.h> using namespace std; typedef long ...

  8. noip2017爆炸记——题解&总结&反省(普及组+提高组)

    相关链接: noip2018总结 noip2017是我见过的有史以来最坑爹的一场考试了. 今年北京市考点有一个是我们学校,我还恰好被分到了自己学校(还是自己天天上课的那个教室),于是我同时报了普及提高 ...

  9. linux 中 stat 函数的用途和使用方法

    stat 函数讲解 表头文件:    #include <sys/stat.h> #include <unistd.h> 定义函数:    int stat(const cha ...

  10. android系统编译打开系统蓝牙

    在项目配置文件ProjectConfig.mk中开启蓝牙以后,但是设置菜单中并没有出现蓝牙选项,最后发现是因为ProjectConfig.mk同级目录下没有蓝牙配置文件android.hardware ...