黑馬程式設計師 C 物件導向基礎複習日記

2021-06-03 04:32:16 字數 2964 閱讀 6933

---------------------- windows phone 7手機開發、.net培訓、期待與您交流! ----------------------

01類  

物件導向概念:萬物皆物件。例如:對某人某事一般從兩方面來描述,即 特徵行為

屬性---物件具有的各種特徵,每個物件的每個屬性都擁有特定值,屬性的值---方法,行動,動作.執行的操作。

物件的特徵叫屬性,物件的行為叫方法,物件是確定的具體的乙個物體,不是抽象的品牌概念(大的分類)

類:類是模子,確定物件將會擁有的特徵(屬性)和行為(方法)

類和物件的區別:類是抽象的概念,僅僅是模板,比如「人類」。物件是乙個你能夠看得到,摸得著的具體實體。例如:你找不到人類,但能找到某個人。

物件可以叫做類的例項(instance),類不佔記憶體,物件才佔記憶體。

類的定義:

語法:

[訪問修飾符]class 類名

類名一般用pascal命名法,首字母大寫,類中可以包含變數的定義和方法。

下面我們定義了乙個叫person的類,這個類僅僅是人這個物件的模板.在這個模板中規定人類物件都應該有  姓名  性別 年齡屬性和sayhello方法,**如下:

class person

,我是生,我今年歲了",name,***,age);}}

02類的例項化

語法: 類  例項名=new 類();

類的成員的訪問:    例項名.屬性    例項名.方法名();

字段、方法、屬性都可以叫做類的成員mermber,它們都需要定義訪問級別。訪問級別的用處在於控制成員在哪些地方可以被訪問,這樣達到物件導向中「封裝」的目的.

通過乙個類產生乙個物件的過程,叫做類的例項化.

訪問類的屬性;//賦值                     訪問類的方法;//呼叫

訪問修飾符:在c#中有4個訪問修飾符

public  :可以在任何地方被訪問

intemal :只能在本專案中被訪問

private  :只能在本類中被訪問

preotected:只能在本類和子類中被訪問

在類這個級別,不寫訪問修飾符預設為intemal,在類中定義變數或方法時,沒有寫訪問修飾符預設private。

03屬性

屬性的定義: get;set;

屬性是為了保護與之相對應的字段的.保證對字段的讀取和賦值符合要求.      屬性可分為:讀寫/唯讀(只有get)/只寫(只有set).允許外部訪問的變數一定要宣告為屬性.

class person

setelse}}

public char ***;

private int age;

//定義乙個變數,在這個變數中含有get/set兩個方法,我們就叫做屬性

//通過乙個公共屬性保護私有變數

public int age

setelse}}

}class program

}04構造方法

避免重複寫例項名。保證使用者在new乙個物件時必須對某乙個屬性進行賦值。 在建立物件時,對唯讀屬性進行初始化。

當我們定義好乙個類之後,如果我們沒有寫構造方法,系統會自動給我們加上乙個預設的沒有引數的構造方法,在這個構造方法中什麼也不做。我們也看不見。

我們可以定義乙個構造方法。構造方法是乙個特殊的方法,它的名字和類的名字相同,並且沒有返回值。連void都可以神略不寫我們一旦手寫乙個構造方法後,系統原先預設給我們新增的那個無參的構造方法就不會再為我們新增了。要例項化乙個類必須呼叫它的構造方法。構造方法也可以過載。

05 命名空間 namespace

解決類名重名的問題,如果**和被使用的類在乙個namespace則不需要using。

在不同命名空間下的類呼叫有兩種方法:

寫全稱 命名空間.類名     

先using引用命名空間,再呼叫。

06字串的處理

string是乙個類class 看作char的唯讀陣列。c#中陣列:不可變性。

例項名.tochararray();     得到字元陣列,可修改

解決大小寫問題

tolower();  都小寫

toupper();  都大寫

trim();去掉兩端的空白

s.tolower();不能直接改變字串

s=s.tolower(); 重新賦值

s1.equals(s2,stringcomparison.ordinallgnorecase)     兩個字串進行不區分大小寫的比較

string split(params char separator)     將字串按照指定的分割符分割為字串陣列;

string split(char separator,stringsplitoptions.options)                         

options取removeemptyentries的時候移除結果中的空白字串.

字串替換:replace( string oldvalue,string newvalue)後替換前

例項名.replace();

取子字串:

string substring(int startindex),取從位置startindex開始一直到最後的子字串;

string substring(int startindex,int length), 取一段長度的字串,不足報錯;

---------------------- windows phone 7手機開發、.net培訓、期待與您交流! ----------------------

詳細請檢視:

黑馬程式設計師 物件導向基礎(二)

target blank asp.net android ios開發 target blank net培訓 期待與您交流!介面 一 介面的概念 介面就是乙個只包含抽象成員的一種特殊的類,值定義成員的介面規格,而成員的實現是在繼承了介面的類中,由派生類根據自身需求,來實現介面的成員內容。二 運用介面的...

黑馬程式設計師 物件導向

物件導向 1 物件導向 是基於面向過程的一種思想。面向過程 以函式為基礎,關注實現過程。物件導向 以物件為基礎,關注實現結果。2 物件導向的思想特點 a 是一種更符合人們思考習慣的思想。b 把複雜的事情簡單化了。c 把我們從執行者變成了指揮者。舉例 買電腦。洗衣,做飯。旅遊。把大象裝進冰箱。體現 c...

黑馬程式設計師 物件導向

物件導向是一種思想,把複雜事物簡單化,把面向過程的執行者變成了指揮者。過程其實就是函式,而物件將函式和一些內容封裝。把事物的屬性和行為封裝成物件,再把物件抽象成類。類的訪問修飾符有public和final。而成員的修飾符有public private protected static 成員變數和區域...