面试-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 ...
随机推荐
- Android自动化测试Uiautomator--UiDevice接口简介
Uiautomator主要分为UiDevice, UiObject, UiScrollable, UiSelector, UiCollection几个类. getUiDevice()方法可以得到一个U ...
- HDU 2476 区间DP String painter
题解 #include <iostream> #include <cstdio> #include <cstring> #include <algorithm ...
- css3盒子模型及其定位
盒子模型常见相关属性和属性取值 /*基本属性*/ padding: padding-left/right/top/bottom border: border-left/right/top/bottom ...
- 10大vim插件
Taglist taglist是一个用于显示定位程序中各种符号的插件,例如宏定义.变量名.结构名.函数名这些东西 我们将其称之为符号(symbols),而在taglist中将其称之为tag.显然,要想 ...
- 2017 Multi-University Training Contest - Team 4
日常绝望系列 Questionnaire HDU - 6075 In order to get better results in official ACM/ICPC contests, the te ...
- .NET重构(五):存储过程、触发器和函数的区别
导读:在触发器的学习过程中,师傅讲了它的耦合性高,建议我能用存储过程,那到底什么是存储过程呢,自己也不是特别了解,还有就是,触发器也算是一种特殊的存储过程,为什么就不建议多用呢?接下来,就谈谈触发器. ...
- Android圆弧背景
代码改变世界 Android圆弧背景 <?xml version="1.0" encoding="utf-8"?><shape xmlns:a ...
- [BZOJ1572] [Usaco2009 Open]工作安排Job(贪心 + 堆)
传送门 把任务按照d排序 一次加入到堆中,如果当前放不进堆中,并且比堆中最小的大, 就从堆中弹出一个数,再把当前的数放进去 #include <queue> #include <cs ...
- 洛谷P3759 - [TJOI2017]不勤劳的图书管理员
Portal Description 给出一个\(1..n(n\leq5\times10^4)\)的排列\(\{a_n\}\)和数列\(\{w_n\}(w_i\leq10^5)\),进行\(m(m\l ...
- 【二叉搜索树】poj 1577 Falling Leaves
http://poj.org/problem?id=1577 [题意] 有一颗二叉搜索树,每次操作都把二叉搜索树的叶子从左到右揪掉(露出来的父节点就变成了新的叶子结点) 先给出了揪掉的叶子序列(多个字 ...