Socket對像的使用

2021-09-05 20:43:41 字數 2164 閱讀 8104

示例程式是同步套接字程式,功能很簡單,只是客戶端發給伺服器一條資訊,伺服器向客戶端返回一條資訊;這裡只是乙個簡單的示例,是乙個最基本的socket程式設計流程,在接下來的文章中,會依次記錄套接字的同步和非同步,以及它們的區別。

下面是示例程式的簡單步驟說明

伺服器端:

第一步:用指定的埠號和伺服器的ip建立乙個endpoint對像;

第二步:建立乙個socket對像;

第三步:用socket對像的bind()方法繫結endpoint;

第四步:用socket對像的listen()方法開始監聽;

第五步:接受到客戶端的連線,用socket對像的accept()方法建立新的socket對像用於和請求的客戶端進行通訊;

第六步:通訊結束後一定記得關閉socket;

1using

system;23

using

system.collections.generic;45

using

system.text;67

using

system.net;89

using

system.net.sockets;

1011

namespace

server

1213

", recvstr);

//把客戶端傳來的資訊顯示出來

6263

string

sendstr ="

ok!client send message successful!";

6465

byte

bs =encoding.ascii.getbytes(sendstr);

6667

temp.send(bs, bs.length, 0);

//返回資訊給客戶端

6869

temp.close();

7071

s.close();

7273

console.readline();

7475}76

777879}

8081}82

83 server結果:

客戶端:

第一步:用指定的埠號和伺服器的ip建立乙個endpoint對像;

第二步:建立乙個socket對像;

第三步:用socket對像的connect()方法以上面建立的endpoint對像做為引數,向伺服器發出連線請求;

第四步:如果連線成功,就用socket對像的send()方法向伺服器傳送資訊;

第五步:用socket對像的receive()方法接受伺服器發來的資訊 ;

第六步:通訊結束後一定記得關閉socket;

1using

system;23

using

system.collections.generic;45

using

system.text;67

using

system.net;89

using

system.net.sockets;

1011

namespace

client

1213

", recvstr);

//顯示伺服器返回資訊

7071

/**/

///一定記著用完socket後要關閉

7273

c.close();

7475}76

77catch

(argumentnullexception e)

7879

", e);

8283}84

85catch

(socketexception e)

8687

", e);

9091}92

93console.writeline(

"press enter to exit");

9495}96

97}9899

}100

101

client端結果:

C 使用引用來傳遞對像

例項1 include using namespace std class a a a a void set int i int get const private int x 用const定義乙個不能修改的指標並返回one值 a func a one int main a a a void set...

面向對像的原則

你不必嚴格遵守這些原則,違背它們也不會被處以宗教刑罰。但你應當把這些原則看成警鈴,若違背了其中的一條,那麼警鈴就會響起。arthur j.riel 1 所有資料都應該隱藏在所在的類的內部。2 類的使用者必須依賴類的共有介面,但類不能依賴它的使用者。3 儘量減少類的協議中的訊息。4 實現所有類都理解的...

Scala語言的面向對像

把資料及對資料的操作方法放在一起,作為乙個相互依存的整體 物件 物件導向的三大特徵 簡單類和無參方法 class counter 無參方法 def current value 注意沒有class前面沒有public關鍵字修飾。代表學生資訊 快捷鍵 alt insert 可以看見 重寫函式 代表學生資...