c#: udtryk og metoder

15
C#: Udtryk og metoder

Upload: lucus

Post on 14-Jan-2016

27 views

Category:

Documents


0 download

DESCRIPTION

C#: Udtryk og metoder. Indhold. “With regards to programming statements and methods, C# offers what you would come to expect from a modern OOPL…” Udtryk Metoder. Part 1. Udtryk…. Udtryk i C#. C# har standard udtrykene … Værditildeling Subrutiner og funktionskald Betingelser - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: C#: Udtryk og metoder

C#: Udtryk og metoder

Page 2: C#: Udtryk og metoder

Indhold

“With regards to programming statements and methods, C# offers what you would come to expect from a modern OOPL…”

UdtrykMetoder

Page 3: C#: Udtryk og metoder

Udtryk…

Part 1

Page 4: C#: Udtryk og metoder

Udtryk i C#

C# har standard udtrykene…VærditildelingSubrutiner og funktionskaldBetingelser

if, switch

Iterationfor, while, do-while

Control Flowreturn, break, continue, goto

Page 5: C#: Udtryk og metoder

Eksemplerx = obj.foo();

if (x > 0 && x < 10) count++;else if (x == -1) ...else { ...}

while (x > 0){ ...

x--;} for (int k = 0; k < 10; k++)

{ ...}

Page 6: C#: Udtryk og metoder

Andre udtryk

C# har også…iteration gennem en datastruktur via foreachnamespace importering via using

Page 7: C#: Udtryk og metoder

foreachSpecialiceret foreach løkke til sweep gennem f.eks array

reducerer risiko for indekserings fejl Giver read only tilgang

int[] data = { 1, 2, 3, 4, 5 };int sum = 0;

foreach (int x in data){ sum += x;}

foreach

type value collection

Page 8: C#: Udtryk og metoder

using

using direktiv giver adgang til klasser i et namespace uden at skulle angive det hver gang

// before

Workshop.Customer c;c = new Workshop.Customer("joe hummel", 94652);

//after

using Workshop;

Customer c;c = new Customer("joe hummel", 94652);

namespace Workshop{ public class Customer { . . . }

public class Product { . . . }}

Page 9: C#: Udtryk og metoder

Et eksempelusing direktiv(er) angives i toppen af filen

/* main.cs */

using System;using Workshop;

public class App{ public static void Main() { Customer c; c = new Customer("joe hummel", 94652); Console.WriteLine( c.ToString() ); }}

namespace Workshop{ public class Customer { . . . }

public class Product { . . . }}

Page 10: C#: Udtryk og metoder

Metoder…

Part 2

Page 11: C#: Udtryk og metoder

Typer af methoder

Klasser kan indeholde 2 typer af methoder:instancestatic

Instance methoder forudsætter instancering af et objektStatic methoder er globale og kræver kun klassenavnet

Page 12: C#: Udtryk og metoder

Eksempel

Array klassen i FCLfully-qualified name is System.Array

namespace System{ public class Array { public int GetLength(int dimension) { ... }

public static void Sort(Array a) { ... }

. . .

}}

instance metode(static ikke angivet)

static metode(static angivet)

Page 13: C#: Udtryk og metoder

Metodekald

Metodekald i Array klassen:

/* main.cs */

using System;

public class App{ public static void Main() { int[] data = { 11, 7, 38, 55, 3 }; Array.Sort(data);

for (int i=0; i<data.GetLength(0); i++) Console.WriteLine(i + ": " + data[i]); }}

Page 14: C#: Udtryk og metoder

Andre nyttige static metoderEt program til addere 2 heltal og udskrive summen:

using System;

public class Calculator{ public static void Main() { string input, output; int a, b, sum;

Console.Write("Enter first integer: "); input = Console.ReadLine(); a = Convert.ToInt32(input);

Console.Write("Enter second integer: "); input = Console.ReadLine(); b = Convert.ToInt32(input);

sum = a + b; output = String.Format("{0} + {1} = {2}", a, b, sum); Console.WriteLine(output); }}

Page 15: C#: Udtryk og metoder

Opsummering

Standardudtryk, og et par ikke-standardassignment, if, for, while, foreach, using

To typer of metoderinstance metoder kræver et objektstatic metoder er globale og kræver kun en klasse