Академический Документы
Профессиональный Документы
Культура Документы
NET
Modificadores
Tanto classes quanto seus membros podem receber modificadores antes de seus nomes. Os modificadores mudam a visibilidade de uma classe ou membros. Muitos bugs podem ser resolvidos aplicando-se coerentemente conceitos de visibilidade.
Programao em C#
Modificadores de Parmetros
Um modificador de parmetro uma palavra reservada com uma finalidade especfica, utilizada antes da declarao da varivel no parmetro de um mtodo.
Modificador In:
Passagem por valor para a varivel de um mtodo. Funciona da maneira como estamos acostumados e no devem ser explicitamente declarados, o valor default.
Programao em C#
Modificadores de Parmetros
Modificador Ref:
Passagem por referncia. Na chamada tambm devemos utilizar o ref. Um argumento passado como ref deve ser necessariamente inicializado. Parmetro apenas de sada. Deve, necessariamente, ser atribudo dentro do mtodo. No recebe valores de entrada e esta a diferena de ref.
Modificador Out:
Programao em C#
Modificadores de Parmetros
using System; namespace SobreCargaMet { class Class1 { static double sum(double x, double y) { return x + y; } static void sum(double x, double y, out double R) { R = x + y; } public static void Main() { double a = sum(10,25); Console.WriteLine(a); sum(15,25, out a); Console.WriteLine(a); } } } Programao em C#
Modificadores de Parmetros
static void DoWork(int param) { param++; } static void Main() { int arg = 42; DoWork(arg); Console.WriteLine(arg); //escreve 42, no 43 } static void DoWork(ref int param) { param++; } static void Main() { int arg = 42; DoWork(ref arg); Console.WriteLine(arg); //escreve 43 } static void DoWork(out int param) { param = 42; } static void Main() { int arg; // no inicializado DoWork(out arg); Console.WriteLine(arg); //escreve 42 }
Programao em C#
Modificadores de Parmetros
O prximo programa tem por objetivo testar o modificador ref e out. Crie um projeto do tipo Console Application. Chame-o de RefOut. Adicione duas classes ao projeto atravs do boto esquerdo do mouse, Pass e WrappedInt. Abra o Program.cs.
Programao em C#
Modificadores de Parmetros
Programao em C#
Modificadores de Parmetros
Programao em C#
Modificadores de Parmetros
Programao em C#
10
Modificadores de Parmetros
Programao em C#
11
Modificadores de Classe
Modificador abstract
Modificador sealed
Programao em C#
12
Modificadores de Membros
Quando declarado um membro na classe pai, obriga o desenvolvedor a implementar o membro para a classe filha. No suporta implementao na classe pai. Indica que o mtodo ou assessor pode ser anulado por classes de herana. Suporta implementao na classe pai e no obriga a implementao na classe herdada.
Modificador virtual
Programao em C#
13
Modificadores de Membros
Modificador const
Modificador event
da classe.
usado para ligar o cdigo de cliente aos eventos Modificar um mtodo ou assessor em uma classe
base herdada.
Programao em C#
Modifcador override
14
Modificadores de Membros
Modificador readonly
construtor da classe.
Modificador static
Modificador sealed
15
Modificadores de Acesso
Modificador public
membros.
Acesso irrestrito ao tipo. Aplicado a classes e Nenhum acesso externo ao tipo e no herdado.
Aplicado a membros que sero acessados somente internamente a um tipo.
Modificador private
Modificador internal
16
Modificadores de Acesso
Modificador protected
Programao em C#
17
Palavras Reservadas
Abstract As Base Bool Break byte case catch char checked class const continue decimal default delegate Do double else enum event explicit extern false finally fixed float for foreach goto if implicit in int interface internal
Programao em C#
is lock long namespace new null object operator out override params private
18
Palavras Reservadas
protected public readonly ref return sbyte sealed short sizeof stackalloc static string struct switch this throw true try typeof uint ulong unchecked unsafe ushort using virtual volatile void while
Programao em C#
19
Operadores
Unrios
Multiplicativos
*, /, %
+,-
Aditivos Deslocamento
<<, >>
Programao em C#
20
Operadores
Relacionamento
Igualdade
==
&, && |, ||
OR lgico e OR condicional
Programao em C#
21
Operadores
XOR lgico
Condicional Atribuio
Programao em C#
22
Operadores
Lgicos
so verdadeiras OU expresso verdadeira se pelo menos uma condio for verdadeira NOT inverte o sinal
Programao em C#
23
Operadores
Todos os aritmticos (+, -, *, / e %) Relacionais (>, <, >=, <=) Igualdade (==) Desigualdade (!=)
Programao em C#
24
Operadores - Precedncia
Primria
(x), x.y, f(x), a[x], x++, x--, new, typeof, sizeof, checked, unchecked +, -, !, ~, ++x, --x, Unrio *, /, % Multipicativo +, Aditivo Deslocamento <<, >> <, >, <=, >=, is Relacional
Programao em C#
25
Operadores - Precedncia
Igualdade AND lgico XOR lgico OR lgico AND condicional OR condicional Condicional Atribuio == & ^ | && || ?: =, +=, -=, *=, /=, %=, &=, |=, ^=, <<=, >==
Programao em C#
26
Operadores - Confuso
y + 2 = + y + 2 Se y = 5, qual o resultado da expresso acima? y + 2 = 7 ou y + 2 = 52?
Para y + 2 = 7, y + 2 = + (y + 2)
Programao em C#
27
Comandos Condicionais
if(expresso) { ... } if(expresso) { ... } else { ... } if(expresso) { ... } else if (expresso) { ... }
Programao em C#
28
Comandos Condicionais
Switch
sbyte, byte, short, ushort, int, uint, long, ulong, char, string, enum
Programao em C#
29
Comandos Condicionais
Switch
switch (expresso) { case constante1: .... break; case constante2: .... break; ... default: // No obrigatria .... break; }
Programao em C#
30
Comandos Condicionais
Crie um projeto Windows Application Chame-o de DateComparison O objetivo verificar duas datas fornecidas pelo usurio e responder falso ou verdadeiro a vrias comparaes.
Programao em C#
31
Comandos Condicionais
Programao em C#
32
Comandos Condicionais
Programao em C#
33
Comandos Condicionais
Programao em C#
34
Comandos Condicionais
Programao em C#
35
Comandos Condicionais
Faa um projeto Console Application chamado SwitchApp, com 2 mtodos: o Main e um chamado compInt. O compInt recebe 2 parmetros inteiros A e B. Atravs de um if deve retornar 0 para A igual a B, -1 se A menor que B e 1 se A maior que B. O mtodo Main pede 2 valores inteiros para o usurio, atravs do uso do mtodo Console.ReadLine().
Programao em C#
36
Comandos Condicionais
E usa um switch para receber o resultado da comparao do mtodo compInt e imprime na tela:
Programao em C#
37
Comandos Condicionais
Programao em C#
38
Comandos Condicionais
Programao em C#
39
Loops
While
Programao em C#
40
Loops
while(expresso) { // cdigo enquanto a expresso // for verdadeira }
while(true) { .... }
Break interrompe a execuo do loop. Executa a prxima linha de cdigo aps o loop. Continue - interrompe a iterao atual e vai para a prxima iterao do loop. No sai do loop.
Programao em C#
41
Loops
Do / while Usamos este bloco quando quisermos que o mesmo seja executado pelo menos uma vez, independente da condio booleana ser satisfeita.
do {
.... } while(expresso)
Programao em C#
42
Loops
For
43
Loops
Foreach / in
Programao em C#
44
Loops
foreach(elemento in coleo) { .... }
Programao em C#
45
Loops
string[] regiao = {sul, sudeste, centro-oeste, nordeste, norte}; int[] digitos = {1, 2, 3, 4, 5, 6, 7, 8, 9}; foreach(string s in regiao) { .... } foreach(int i in digitos) { Console.WriteLine(i); //note que no h como pegar o ndice do array diretamente. }
Programao em C#
46
Loops
O prximo exerccio usa loops while e foreach para ensinar tambm a comear a manipular arquivos. Usaremos novos componentes:
OpenFileDialog
Abre o formulrio padro do SO para navegar pelo sistema e abrir um arquivo. Abre o formulrio padro do SO para navegar pelo sistema e salvar um arquivo. Similar ao TextBox, porm com formataes de arquivos texto.
SaveFileDialog
RichTextBox
Programao em C#
47
Loops
Programao em C#
48
Loops
Programao em C#
49
Loops
Programao em C#
50
Loops
Programao em C#
51
Loops
O prximo exerccio tem por objetivo o uso do loop do/while. Faa um projeto com um Console Application que pede um nmero inteiro para o usurio e imprime o nmero na ordem reversa dgito por dgito.
Programao em C#
52
Loops
Exemplo:
Entrada:
Sada:
Programao em C#
53
Loops
Programao em C#
54
Loops
O prximo exerccio tem por objetivo o uso do loop for. Faa um projeto com um Console Application que pede um nmero inteiro para o usurio e imprime todos os nmero pares do nmero dado at o 0. Ordem decrescente. No esquea de forar para que o nmero dado seja maior que 0.
Programao em C#
55
Loops
Programao em C#
56