.NET學習之路(一)
.NET FrameWork(.NET框架)的兩大核心元件是:
1.CLR(Common Language Runtime)公共語言執行時,提供所有.NET應用程式執行的環境。
CLR又包含兩個組成部分
a.CLS(Common Language Specification)公共語言規範,所有的.net都遵循這個規則,遵循這個規則的語言在.Net框架下都可以實現互相呼叫。
b.CTS(Common type system)通用型別系統,保證.Net開發中不同的語言資料型別之間互相相容。
2.FCL(.Net FrameWork Class Library) .Net FrameWork
值型別:不同的變數會分配不同的儲存空間,儲存空間中儲存的是該變數的值
改變一個變數值不會影響另一個變數值
例如: int zhang = 180;
int li = zhang;
li = 190;
Console.Write(zhang);//180
引用型別:賦值是把原物件的引用傳遞給另一個引用,兩個引用指向同一塊記憶體空間
例如:int[] zhang = newint[]{170,60 };
int[] li = zhang;
li[0] = 180;
li[1] = 70;
Console.WriteLine("張浩的身高是:"+zhang[0]);//180
Console
*******************結構**************************
一.定義結構:
語法:訪問修飾符 struct 結構名
{
定義結構成員
}
注意!!!結構中可以有欄位,也可以由方法。結構是值型別。
例如: public struct Student
{
public int id;
public int age; //注意:結構中的欄位不能直接賦初值
public void Show()
{
Console.WriteLine("ID:{0}\n
}
}
二:使用結構:
注意!!使用結構可以new 也可以不new
例如:
Student stu; //建立學生結構
stu.id = 1001; //給學號賦值
stu.age = 20; //給年齡賦值
stu.Show();
溫馨提示:當物件需要用較少的欄位來表示時,可以選用結構
因為結構是值型別,資料提取速度快
但是頻繁的賦值操作會佔用較大空間,所以在開發中多數情況下都定義為類!!!
**************************裝箱拆箱*****************************************
裝箱:將值型別送給引用型別。拆箱:將引用型別轉換為值型別
int i = 123;
object num = i; //此步驟為裝箱
int j = (int) num; //此步驟為拆箱拆箱要與值型別的變數型別統一
注意:應該儘量減少不必要的裝箱和拆箱。因為二者的儲存方式不同,轉換時效能損失較大
相關推薦
.NET學習之路(一)
.NET FrameWork(.NET框架)的兩大核心元件是: 1.CLR(Common Language Runtime)公共語言執行時,提供所有.NET應用程式執行的環境。 CLR又包含兩個組成部分 a.CLS(Common Language Specific
.Net Core學習之路(一)
日常 整體 get res 頁面 image setting 文字 body 前言:因為公司轉型需要,特地學習.NET Core。本來在我的計劃中.Net Core的學習應該沒有快就被執行的。一來是我想多補一點基礎和理論知識,再者就是我想攢點錢買臺好點的電腦再裝VS2
scala學習之路一
項目 前綴 .org 特質 行為 java字節碼 java 類繼承 對象 所謂學習,那麽首先就先簡單介紹一下scala吧 1.scala的介紹 Scala 是一門多範式(multi-paradigm)的編程語言,設計初衷是要集成面向對象編程和函數式編程的各種特性。 S
視覺slam學習之路(一)看高翔十四講所遇到的問題
nes make 機器 cmake 編寫 直接 記錄 nbsp slam 目前實驗室做機器人,主要分三個方向,定位導航,建圖,圖像識別,之前做的也是做了下Qt上位機,後面又弄紅外識別,因為這學期上課也沒怎麽花時間在項目,然後導師讓我們確定一個方向來,便於以後發論文什麽
框架學習之路一
學習工作當中用到了那麼多的框架,難免會想搞清楚這些框架的底層到底是怎樣實現的,藉此機會從簡單的寫起,嘗試著去實現一個框架 一,通過解析xml,獲取其中的欄位,用反射技術呼叫類中的方法 技術:dom4j,java反射 1,定義一個介面 package com.epro.f
OpenGL學習之路 一
第一篇部落格 QAQ 今天開始學OpenGL(好像之前學了點)有沒一起來搞的(滑稽) 求大佬帶飛 這裡分享個人的學習過程和心得(僅供參考) 如有不足之處望大家指出 =====================================================
【Nginx】學習之路一 虛擬機器安裝
author:咔咔 wechat:fangkangfk 由於公司需求,得學Nginx了,下來就開始我學習Nginx的生涯 第一步那就是安裝虛擬機器了 這裡我就放一個百度網盤的地址,需要的加上面的微信要密碼 連結:https://pan.ba
TypeScript學習之路(一)
TypeScript語言內部主要被分為三層:語言層、編譯層、語言服務層。 每一個主要從層都有不同的用途: 語言層:實現所有TypeScript的語言特性。 &n
Git學習之路(一)-SSH公鑰配置
這篇文章是Git的學習之路的第一篇,學習Git是因為工作中需要重寫Activiti6.0原始碼,所以需要從Activiti GitHub官網下載相應資源,由於之前一直對Git的命令一知半解,所以打算趁著這個機會,好好學習一下Git相關知識。 一、從Git官網下載最新版本並在本地安裝 這一步就
服務計算學習之路一 —— 使用 VirtualBox 讓 PC 提供雲桌面服務
使用 VirtualBox 讓 PC 提供雲桌面服務 隔了幾個月沒寫部落格了,作為潘哥的頭號粉絲,能選到他的服務計算課還是很開心的,好了,言歸正傳,回到課程了! 實驗目的 初步瞭解虛擬化技術
新手微擎(微贊)學習之路一
我剛接觸微擎沒多久,學習中遇到很多問題,走過很多彎路。遇到很多問題在網上也查不到,因此想把我自己的學習歷程寫出來供新手們參考(本人還是菜鳥一枚,文中錯誤之處,敬請指正!) 我以一個新手小白的角度來幫助想學習微擎的小夥伴指出(建議)一條路: 首先以我的理解說
從 Python到Tensorflow 學習之路(一)
從 Python到Tensorflow 學習之路(一) 最近畢業設計題目是研究對抗樣本,要用tensorflow來搭建神經網路,因此python必不可少,這個不是一個傳統的Python學習教程只是把學習Python過程中遇到的問題和經驗記錄下來(基於Python2.7),如果想
opengl學習之路一,你好,視窗
QQ:609162385 連結:https://blog.csdn.net/cqltbe131421 讓我們試試能不能讓GLFW正常工作。首先,新建一個.cpp檔案,然後把下面的程式碼貼上到該檔案的最前面。 #include <glad/glad.h>
芝麻麻雀-Asp.Net學習之路
在使用.net framework 4.7.2寫asp.net mvc的過程中,由於使用nuget更新了一下系統相關的類庫,更新的類庫如下,升級到了4.3.0版本 導致問題如下:由於是系統新增的類
Kotlin學習之路一(Kotlin語言簡介)
Kotlin語言的歷史 Kotlin語言是由JetBrains公司從2010年開始構思,2011年退出Kotlin專案,2012年將Kotlin專案開源,2016年釋出了一個穩定版本,所以說,Kotli
我的Linux學習之路(一)
在大二的開始,還不算太晚的時間點,我決定成為一名網路安全工程師,於是決定先學習Linux,我主要從《Linux就該這麼學》和《鳥哥的Linux私房菜》以及看一些視訊來學習,在這裡會記錄我的學習經歷,學習中的收穫和遇到的困難,也會跟大家分享學習的心得。
我的Python學習之路一:Python學習路線
作為小白,在學習Python的時候,必然會走一定的彎路,有人在彎路上走丟了,有人走出了彎路。我就是屬於還未走出彎路的同學,所以我想談談我的Python學習之路。 我進入這個坑是因為這個最近幾年比較火,想必大家都知道吧,我開始學習Python
Python學習之路(一)----python和pycharm的安裝和首次使用
一、Pyhton的安裝: 1.(python官網下載地址)https://www.python.org/downloads/windows/ 選擇自己需要的版本,這裡只是舉個例子(開啟來可能會比較慢) 2.下載完後,雙擊安裝
後臺學習之路(一):Java基礎回顧
集合: 單列集合: Collection:單列集合的根介面 List:實現了List介面的集合類,具備的特點:有序、
我的spark學習之路(一)
2016.8.10 其實北京一年,我也一直在考慮我回所到底研究什麼方向,但都只是停留在想想的層次,最終也沒什麼結果,回來老師問了我的想法說,學分散式計算吧,讀博也可以,找工作也好找,文章也好發,我一想,這感情好啊,既符合我搞開發的興趣,文章也不難發,畢業了還有