Unitatea de învăţare 3 ELEMENTELE LIMBAJULUI VB.NET
_________________________________________________________________________________________________________________
UNITATEA DE ÎNVĂŢARE 3
ELEMENTELE LIMBAJULUI VB.NET ___________________________________________________________________________
Cuprins
Obiectivele unităţii de învăţare 3
-
Introducere în VB.NET.
Evoluţia limbajului BASIC
Caracteristicile limbajului VB.NET
Platforma .NET Framework
Structura unei aplicaţii în VB NET
Întrebări
3.2. Tipuri de date
Definirea conceptului de tip de dată
Categorii de tipuri de date
Copierea şi compararea datelor
Întrebări
3.3. Structurile lexicale ale limbajului VB.NET
Categorii de unităţi lexicale
Comentariile
Cuvintele cheie
Identificatorii
Literalii
Separatorii
Variabilele
Constantele
Operatori
Instrucţiunile
Întrebări
3.4. Instrucţiuni în VB.NET
Instrucţiunile declarative
Instrucţiunile de control
Alte instrucţiuni executabile
Întrebări
3.5. Subprograme in VB.NET
Funcţiile de sistem (intrinseci)
Subprogramele definite de utilizator
Întrebări
Bibliografie Unitatea de învăţare 3
OBIECTIVELE UNITĂŢII DE ÎNVĂŢARE 3
-
Însuşirea cunoştinţelor necesare pentru a înţelege noţiunile de soluţie, proiect şi aplicaţie.
-
Cunoaşterea caracteristicilor platformei .NET Framework, a provocărilor induse de globalizarea programării în Internet şi soluţiile de unificare adoptate.
-
Definirea conceptului de tip de dată, înţelegerea tipurilor de date, a modului de comparare şi copiere.
-
Însuşirea unităţilor lexicale în VB.NET şi a deprinderilor de utilizare corectă a lor.
-
Însuşirea principalelor instrucţiuni declarative şi de control implementate în VB.NET.
-
Cunoaşterea principalelor categorii de funcţii de sistem (intrinseci) implementate în VB.NET.
-
Definirea şi apelul subprogramelor definite de utilizator.
3.1. Introducere în VB.NET
-
Evoluţia limbajului BASIC
Evoluţia limbajului BASIC (Beginner’s Allpurpose Symbolic Instruction Code) poate fi sintetizată astfel:
-
a fost creat în 1963 la Darmouth College, SUA, ca limbaj de programare facil pentru studenţii cu profil uman;
-
a cunoscut o largă răspândire pe microcalculatoarele anilor ’70 şi home computers în anii ’80;
-
în 1975 firma Microsoft oferă un interpreter BASIC pentru calculatorul Altair 8800 (primul produs al firmei nou înfiinţate);
-
Microsoft a dezvoltat ulterior noi versiuni: pentru MS-DOS (GWBasic şi QBasic); pentru interfeţe grafice începând din 1991(VB versiunea 1), 1998 VB 6; limbaje derivate (VBA Visual Basic for Application – încorporat în MS-Office; VBScript pentru WEB). Limbajul Visual Basic nu a rămas pe loc, în timp ce provocările tehnologice s-au modificat şi au crescut. VB 3 a adăugat capabilitatea DAO (Data Access Object) pentru a accesa bazele de date şi alte surse de date. VB 4 a oferit două compilatoare separate unul pe 16 biţi şi altul pentru 32 biţi. De asemenea a permis dezvoltatorilor să construiască programe pe baza modelului COM (Component Object Model), oferind posibilitatea de a crea biblioteci cu legături dinamice (DLL) şi a debutat programarea bazată pe clase. În VB 5 limbajului i s-a adăugat capacitatea de a construi şi distribui controale ActiveX. VB 6 a fost rescris în întregime şi a oferit noi controale de WEB şi posibilitatea moştenirii interfeţelor pentru clase;
-
VB Net este succesorul lui VB6; versiunile lui VB Net sunt: 2002 (versiunea 7.0), 2003 (versiunea 7.1), 2005 (versiunea 8.0), 2008 (versiunea 9.0), 2010 (versiunea 10.0). Tranziţia de la limbajele de programare tradiţionale la VB.NET este considerată de către mulţi1, inclusiv de Bill Gates, a fi mai dramatică decât tranziţia de la DOS la Windows.
-
Caracteristicile limbajului VB.NET
VB.NET:
-
este un limbaj complet pentru programarea orientată pe obiecte, având implementate toate paradigmele programării orientate obiect;
-
este un limbaj puternic tipizat la activarea directivei Option explicit on (care forţează definirea explicită a variabilelor înainte de utilizare). Dacă se activează şi Option strict on (nu vor fi permise conversiile implicite cu pierdere de mărime sau precizie) ;
-
tratează structurat excepţiile prin structura: Try… Catch… Finally;
-
oferă suport pentru prelucrările multi-fir (multi-threading);
-
oferă suport pentru dezvoltarea WEB.
Trecerea de la programarea clasică la programarea orientată pe obiecte a permis realizarea saltului calitativ după ce limbajul C++ a câştigat teren. Dar cum VB.NET şi C++ au rutine de execuţie separate, fiecare cu componente distincte. Pentru a rezolva problema comunicării între limbaje Microsoft a dezvoltat mai întâi mecanismele COM. Modelul COM este un standard (o convenţie) care stabileşte regulile cum trebuie construită o componentă COM, pentru a putea comunica cu orice componentă COM, indiferent de limbajul în care a fost construită. Astfel COM a început să acţioneze ca un standard binar de interoperabilitate între obiecte. S-a dovedit că utilizarea standardului COM prin intermediul Internetului pe o maşină aflată la distanţă nu s-a putut realiza fără probleme, deoarece modelul COM distribuit (DCOM) s-a lovit de eterogenitatea sistemelor de operare şi a platformelor de lucru în Internet. Au fost mai multe încercări de soluţionare a problemelor ivite (proiectul COBRA, etc.), fără a se găsi o soluţie viabilă în marea eterogenitate de platforme, sisteme şi dispozitive.
Platforma .NET Framework a venit cu următoarea soluţie2: <<În loc de a învăţa noi tehnici pentru a optimiza programele în funcţie de echipamentul hardware şi sistemul specific de operare vom utiliza compilatoare separate în funcţie de arhitectură pentru fiecare platformă nouă (sau deja existentă) şi apoi vom denumi fiecare versiune pe care dezvoltatorii o pot utiliza .NET. La baza acestei noi abordări se află Rutina de execuţie a limbajului comun (common language runtime - CLR). CLR oferă multe beneficii programatorilor în orice limbaj .NET (VB.NET, C++ , C# sau altul din cele 17 limbaje suportate de CLR)>>. CLR facilitează pentru programatorii în VB.NET proiectarea şi construirea de aplicaţii ale căror obiecte pot interacţiona cu obiectele scrise în alte limbaje, deoarece platforma .NET este construită pe mai multe nivele astfel:
-
Compilatorul VB ca şi compilatoarele celorlalte 16 limbaje recunoscute de platformă se găsesc în partea superioară a platformei;
-
Sub compilatoare se găsesc specificaţiile comune de limbaj (common language specifications - CLS): un set de reguli minimal pentru a asigura interoperabilitatea componentelor obţinute cu limbajele recunoscute de platformă.
Practic programele scrise în limbajele de programare care vor respecta cerinţele minimale impuse de CLS vor putea rula pe platforma .NET, vor putea valorifica toate clasele şi derivatele acestora din biblioteca comună şi vor putea fi executate pe orice calculator pe care lucrează CLR.
-
Pe ultimul nivel se află CLR care preia codul generat de VB.NET şi orice limbaj compatibil (care respectă specificaţiile CLS) şi îl converteşte în limbajul nativ al arhitecturii platformei curente.
Practic CLR este marele unificator, el este responsabil de rularea programului pe orice platformă pe care poate rula CLR. Practic CLR oferă suport pentru tot ce se află deasupra sa: biblioteca claselor de bază; date şi XML; servicii de WEB sau interfeţe cu utilizatorul; CLS şi compilatoare – şi asigură şi conversia codului pentru arhitectura specifică pe care se execută aplicaţia, aşa cum se prezintă în diagrama de mai jos.
Structura unei aplicaţii în VB NET
-
Soluţii, proiecte şi module
Un proiect este un grup de fişiere cu cod sursă sau module care, atunci când este compilat şi rulat formează o singură aplicaţie, cum ar fi un program executabil, o bibliotecă, un serviciu WEB sau o aplicaţie WEB de tipul ASP.NET.
O soluţie este un container pentru un proiect sau mai multe proiecte inter-relaţionate şi se foloseşte pentru gestionarea proiectelor. Orice proiect este plasat în cadrul unei soluţii. Când o soluţie conţine mai multe proiecte, acestea au de regulă, legătură între ele.
-
Tipuri de proiecte
Tipurile de proiecte care pot fi realizate în VB.NET sunt prezentate în caseta de modele (templates) la crearea unui nou proiect (New Project) şi diferă de destinaţia acestora, fiind diferite pentru:
Astfel de exemplu:
. Windows Application (aplicaţie Windows) – este folosit pentru a crea o aplicaţie executabilă în format Windows, de obicei cu extensia .exe şi reprezintă standardul de aplicaţii care lucrează sub sistemul de operare Microsoft Windows;
.Class Lirary (biblioteca de clase) – este folosit pentru a crea un fişier bibliotecă cu extensia .dll;
.Console Application (aplicaţie în mod consolă) – folosit pentru a crea o aplicaţie executabilă care poate rula în mod consolă (din linia de comandă);
.Windows Control Library (librărie de controale Windows) – folosit pentru a crea controale Windows definite de utilizator;
.ASP.NET Web Application (aplicaţie Web ASP.NET) – folosit pentru a crea o aplicaţie Web de tip ASP.NET;
. ASP.NET Web Service (serviciu Web ASP.NET) – folosit pentru a crea un serviciu Web.
-
Folosirea instrumentului Solution Explorer
Solution Explorer (instrumentul de navigare prin soluţii) este un instrument Visual Studio, care permite gestionarea şi navigarea printre proiectele şi resursele unei soluţii. Activarea lui Solution Explorer se face selectând din meniul ferestrei design View, Solution Explorer. Pentru a vizualiza toate fişierele soluţiei se poate activa opţiunea Show All Files (afişează toate fişierele).
Solution Explorer permite: adăugarea unui proiect nou unei soluţii existente (opţiunea Add (adăugare) din meniul contextual); adăugarea unui proiect preexistent la o soluţie (opţiunile: Add (adăugare) din meniul contextual, Existing Project (proiecte preexistente)); configurarea proprietăţilor paginii unei soluţii (în caseta – Property Pages (pagini cu proprietăţi), inclusiv stabilirea proiectului de start; configurarea paginilor unui proiect, inclusiv stabilirea subrutinei de Startup al unui proiect; etc.
Întrebări_1.'>Întrebări
1. Prezentaţi câteva argumente în favoarea ideii că Limbajul Visual Basic nu a rămas pe loc, în timp ce provocările tehnologice s-au modificat şi au crescut.
2. Care sunt principalele caracteristici ale limbajului VB.NET?
3. Care au fost principalele provocări induse de globalizarea programării pentru Internet?
4. Care sunt soluţiile adoptate de .NET Framework pentru a permite realizarea serviciilor Web?
5. Enumeraţi câteva tipuri de proiecte care por fi realizate cu VB.NET.
6. Care este rolul instrumentului Solution Explorer?
3.2. Tipuri de date
-
Definirea conceptului de tip de dată
Un tip de date este un plan (un model) pentru alocarea unei zone de memorie. Acest plan determină domeniul de valori pe care memoria le poate stoca, modul de stocare şi operaţiile pe care le putem realiza în memorie.
-
Categorii de tipuri de date
VB.NET utilizează două categorii de tipuri de date: tipul valoare şi tipul referinţă. Înţelegerea diferenţelor dintre tipurile de date valoare şi referinţă este importantă din mai multe motive:
-
Sunt tratate diferit de către sistemul de gestiune a memoriei;
-
Testează egalitatea în mod diferit;
-
Sunt iniţializate diferit de rutina de execuţie a limbajului comun (CLR);
-
Sunt tratate diferit în declaraţiile de atribuire.
a) tipul valoare (primitiv sau elementar)
- conţine întotdeauna o valoare;
- se iniţializează cu valoarea predefinită (dacă nu sunt iniţializate explicit);
- pot fi întotdeauna accesate direct;
- nu pot fi derivate în alte tipuri (sunt închise - sealed);
- sunt memorate în stivă (stack).
Tipurile primitive din VB.NET sunt identificate prin intermediul cuvintelor cheie care sunt în realitate alias-uri pentru tipuri de structuri predefinite din spaţiul de nume System (exemplu - tipul Byte este alias-ul pentru System.Byte).
Tipurile de date de tip valoare acceptate de VB Net sunt:
Tip
|
Mărimea locaţiei
|
Valoarea implicită
|
Domeniu
|
Byte
|
1 octet
|
0
|
0-255 (fără semn)
|
Boolean
|
4 octeţi
|
False
|
True sau False
|
Char
|
2 octeţi
|
Chr(0)
|
0, 65.535
|
Short
|
2 octeţi
|
0
|
-32.768 , 32.767
|
Integer (întreg)
|
4 octeţi
|
0
|
2.147.483.648, 2.147.483.647
|
Long (întreg lung)
|
8 octeţi
|
0
|
9.223.372.036.854.775.808,
-9.223.372.036.854.775.807
|
Single (simplă precizie)
|
4 octeţi
|
0.0
|
-3.402823E38, -1.401298E-45
|
Double (dublă precizie)
|
8 octeţi
|
0.0
|
-1.79769313486231D308, -4.940654584124D-324
|
Date (dată calendaristică)
|
8 octeţi
|
#01/01/000 1 12:00:00 AM#
|
ian 1,100 şi dec 31,9999
|
Structure
|
În funcţie de platformă
|
|
|
Ushort
|
2 octeţi
|
|
0, 65.535
|
b) tipul referinţă
- conţine o referire către o altă adresă de memorie la care se află datele propriu-zise;
- un tip referinţă conţine o adresă validă către un obiect sau o adresă vidă (Nothing). Cu o referinţă vidă este ilegal să se facă altceva decât să i se atribuie o valoare adecvată;
- nu pot fi iniţializate automat cu valori implicite;
- referinţele sunt păstrate de obicei în stivă;
- datele propriu-zise sunt păstrate în memoria dinamică (heap – grămadă, mulţime ).
Acest aranjament permite colectorului de gunoaie să urmărească un obiect care a fost marcat pentru a fi şters şi să elibereze memoria alocată obiectului atunci când acesta nu mai este necesar.
Tipurile de date referinţă în VB Net sunt:
Tip
|
Mărimea locaţiei
|
Domeniu
|
Object
|
4 octeţi
|
Variază
|
String
|
10 + 2 octeţi/caracter
|
0, 2 miliarde de caractere Unicode
|
-
Copierea şi compararea datelor
Cum în cazul datelor de tip valoare zona de memorie conţine chiar valoarea, atunci cele două zone de memorie vor conţine aceeaşi valoare. În codul prezentat mai jos valorile vor fi egale, chiar dacă ocupă zone de memorie diferite.
Dim v1 As Integer = 20
Dim v2 As Integer = 20
Copierea (atribuirea) datelor de tip valoare înseamnă că valoarea (conţinutul) unei zone de memorie va fi copiată (atribuită) altei zone de memorie.
v1 = v2
(însemnă că v1 va lua valoarea lui v2);
Dacă ulterior modificăm valoarea lui v1
V1 = 20
( v2 rămâne nemodificată).
În faza iniţială deşi obiectele o1 şi o2 sunt de acelaşi tip, totuşi variabilele de tip referinţă vor memora adrese diferite de memorie. Chiar dacă la adresele respective vor fi obiecte identice, în urma comparaţiei se va obţine rezultatul False.
Copierea (atribuirea) datelor de tip referinţă înseamnă că valoarea (conţinutul) unei zone de memorie va fi copiată (atribuită) altei zone de memorie. Cum în cazul datelor de tip referinţă zona de memorie conţine adresa unde se află un obiect, atunci cele două zone de memorie vor puncta (adresa) aceeaşi zonă de memorie, deci acelaşi obiect. În codul prezentat mai jos:
o1 = o2
(însemnă că o1 va lua, va fi transferat conţinutul lui o2; adică şi o1 şi o2 referă aceeaşi zonă de memorie (în general acelaşi obiect); dacă ulterior se modifică obiectul prin o1 va fi modificat şi o2. Mai mult obiectul referit prin o1 îşi pierde referinţa (nu mai poate fi accesat), devine indisponibil şi va intra în sfera de influenţă a Colectorului de gunoaie – vezi figura 3.2(1).
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim v1 As Integer = 20
Dim v2 As Integer = 20
Dim o1 As New Label
Dim o2 As New Label
MessageBox.Show(v1.Equals(v2).ToString, "v1=20, v2=20 - Deşi ocupă zone de memorie diferite") 'True
'Deşi ocupă zone de memorie diferite v1 şi v2 au valori egale
v2 = 25
MessageBox.Show(v1.Equals(v2).ToString, "v1=20, v2=25") 'False
'Acum v1 este diferit de v2
v1 = v2
'Conţinutul lui v2 i se atribuie şi lui v1
MessageBox.Show(v1.Equals(v2).ToString, "v1 = v2") 'True
'Deşi ocupă zone de memorie diferite v1 şi v2 au valori egale
v1 = 20
MessageBox.Show(v1.Equals(v2).ToString, "Modificarea valorii lui v1 lasă pe v2 nemodoficată") 'False
'Modificarea valorii lui v1 lasă pe v2 nemodoficată
MessageBox.Show(o1.Equals(o2).ToString, "Deşi conţin referinţe la obiecte identice") 'False
'Deşi conţin referinţe la obiecte identice, variabilele referinţă au valori diferite
o1.Text = "Eticheta1"
o2.Text = "Eticheta2"
MessageBox.Show("Propietatea Text a lui o1 eate: " & o1.Text & " Iar propietatea Text a lui o2 eate: " & o2.Text, "o1 si o2 refera obiecte diferite")
'o1 si o2 refera obiecte diferite
o1 = o2
'Conţinutul variabilei o2 se atribuie variabilei o1 (conţin,referă - aceaşi zonă de memorie, adică acelaşi obiect)
MessageBox.Show(o1.Equals(o2).ToString, " o1 = o2") 'True
MessageBox.Show("Propietatea Text a lui o1 eate: " & o1.Text & " Iar propietatea Text a lui o2 eate: " & o2.Text, " Amandoua variabilele refera obiectul 2")
'Variabilele o1 si o2 au aceeasi valoare (refera aceasi adresa de memorie - acelasi obiect)
o1.Text = "Valoare modificata"
MessageBox.Show("Propietatea Text a lui o1 eate: " & o1.Text & " Iar propietatea Text a lui o2 eate: " & o2.Text, " Modificarea unei proprietati prin variabila de referinta o1 modifica aceeasi proprietate din o2")
'Modificarea unei proprietati prin variabila de referinta o1 modifica aceeasi proprietate din o2
'De fapt zona de memorie (obiectul referit initial de o1)s-a pierdut (nu mai este referint)
End Sub
End Class
Figura 3.2(1)
Iniţial:
Ulterior: O1= O2
Întrebări
1. Definiţi conceptul de tip de dată.
2. Ce stabileşte tipul de dată pentru zona de memorie?
3. Prin ce se caracterizează datele de tip valoare?
4. Prin ce se caracterizează datele de tip referinţă?
5. Când două variabile de tip referinţă sunt egale?
3.3. Structurile lexicale ale limbajului VB.NET
-
Categorii de unităţi lexicale
Un program VB.NET din punct de vedere lexical se compune dintr-un set de elemente de programare (unităţi lexicale), grupate în următoarele categorii:
- comentarii;
- cuvinte cheie (cuvinte rezervate);
- identificatori (denumiri date de utilizator sau generate automat de sistem);
- literali (valori);
- separatori;
- variabile;
- constante;
- operatori;
- expresii;
- instrucţiuni;
- funcţii şi proceduri intrinseci (existente în sistem);
- proceduri şi funcţii definite de utilizator.
Comentariile sunt note explicative în program care sunt ignorate de compilator. Ele se definesc cu ajutorul:
sau
În sensul că tot ce urmează după apostrof este comentariu, iar linia care începe cu Rem este comentariu.
Exemple:
Dim v1 As Integer = 20 'Definire variabila tip valoare cu initializare
Rem Deşi ocupă zone de memorie diferite v1 şi v2 au valori egale
Cuvintele cheie sau cuvintele rezervate sunt cuvinte cu rol bine determinat în cadrul metalimbajului.
Exemple de cuvinte rezervate: As, ByVal, Class, Dim, Integer, Private, Public.
Sunt nume atribuite de utilizator diferitelor elemente de limbaj (variabile, constante, clase, proprietăţi, metode, etc.) sau sunt generate automat de sistem.
Identificatorii:
-
trebuie să fie diferiţi de cuvintele cheie;
-
trebuie să înceapă cu o literă sau (_ underscore);
-
pot conţine litere, cifre sau _;
-
dacă încep cu _ trebuie să mai conţină cel puţin o cifră sau literă;
-
nu pot depăşi 1023 caractere.
Deşi limbajul nu face deosebire între literele mari şi mici cea mai utilizată convenţie în VB NET este: fiecare cuvânt din denumirea unei clase sau metode începe cu literă mare (ContCurent, CitesteNume); denumirea unei variabile sau proprietăţi începe cu literă mică, iar următoarele cuvinte încep cu majuscule (dataCurenta, numeAngajat); identificatorii pentru constante se scriu cu litere mari, despărţite prin _ (COTA_TVA).
Literalii descriu (definesc/conţin) valori de un anumit tip. Astfel:
-
valorile alfanumerice (string) sunt încadrate între ghilimele (” ”);
-
data calendaristică este încadrată între diez (# #);
Exemple:
Dim iNumar As Integer = 123 'Numar intreg
Dim strNume As String = "Ion" 'Sir
Dim dtDataUnu As Date = #12/10/2011# 'Data calendaristica
Dim dtDataCurenta As Date = Now() 'Data curenta
Separatorii sunt caractere speciale utilizate pentru delimitarea unităţilor lexicale. Aceştia sunt:
-
parantezele rotunde () - utilizate la: definirea procedurilor, funcţiilor, tablourilor sau la modificarea precedenţei operatorilor;
-
punctul (.) - separă denumirea unui obiect de denumirea unui membru (califică o proprietate sau o metodă);
-
virgula (,) - separă elementele unei mulţimi (argumentele unei funcţii);
-
liniuţa de subliniere (_) – precedată şi urmată de spaţiu permite continuarea unei instrucţiuni pe linia următoare;
-
două puncte (:) – separă două sau mai multe instrucţiuni scrise pe acelaşi rând.
Observaţii: Trebuie precizat că un spaţiu sau mai multe joacă rol de separator. De asemenea operatorii aritmetici şi de comparare sunt şi separatori.
Variabila reprezintă o zonă din memoria internă în care este stocată o valoare de un anumit tip, care poate fi modificată în timp.
O variabilă este definită:
-
printr-un calificativ de acces;
-
printr-un nume (identificator);
-
printr-un tip de dată;
-
printr-o valoare.
Lucrul cu variabilele presupune:
[calificator de acces] numeVariabilă [As tipData] [=valoare iniţială]
Definirea variabilei presupune:
-
alocarea unei zone în memoria internă;
-
stabilirea unui identificator (denumire);
-
specificarea tipului de dată pe care o conţine;
-
precizarea calificativului de acces.
Declararea unei variabile stabileşte:
-
durata de viaţă (perioada de timp în care variabila poate fi utilizată);
-
domeniul de vizibilitate (zona din program din care variabila este vizibilă (accesibilă, cunoscută). Domeniul de vizibilitate este dependent de locul în care variabila a fost definită şi de nivelul de protecţie stabilit);
-
nivelul (drepturile) de acces (defineşte nivelul de protecţie (de acces). Precizează permisiunea de acces a variabilei din afara zonei în care a fost definită).
Drepturile de acces sunt : public, private, protected (accesibilă în clasa în care a fost definită şi în clasele derivate din aceasta), friend (\’frend\) (accesibilă numai în proiectul unde a fost definită), protectedFriend (combinaţia celor două).
Iniţializarea unei variabile înseamnă setarea sa cu o valoare iniţială. Iniţializarea poate fi:
-
realizată automat de compilator cu valoarea implicită (în cazul variabilei de tip valoare, dacă programatorul nu o iniţializează în mod explicit);
-
trebuie realizată explicit de programator (în cazul variabilei de tip referinţă).
Constantele descriu zone din memoria internă în care sunt stocate valori de un anumit tip care nu pot fi modificate.
O constantă este definită astfel:
[calificator de acces] Const numeConstantă [As tipData] =valoare
Operatorul este un element ce execută o operaţie asupra uneia sau mai multor valori (numite operanzi). Operatorii limbajului VB.NET sunt grupaţi în următoarele categorii:
Operator
|
Descriere
|
^
|
Ridicare la putere
|
Operatorii unari: +,-
|
|
*,/
|
Înmulţire/Împărţire
|
\
|
Împărţire întreagă (returnează partea întreagă a împărţirii a două numere)
|
Mod
|
Restul împărţirii
|
+,-
|
Adunare/Scădere
|
Operator
|
Sintaxa
|
Descriere
|
=
|
operand1= operand2
|
Atribuie operandului din stânga (operand1) valoarea operandului din dreapta (operand2)
|
+=
|
operand1+= operand2
|
operand1= operand1 + operand2
|
-=
|
operand1-= operand2
|
operand1= operand1 - operand2
|
*=
|
operand1*= operand2
|
operand1= operand1 * operand2
|
/=
|
operand1/= operand2
|
operand1= operand1 / operand2
|
\=
|
operand1\= operand2
|
operand1= operand1 \ operand2
|
^=
|
operand1^= operand2
|
operand1= operand1 ^ operand2
|
Operator
|
Descriere
|
=
|
Egal
|
<>
|
Diferit
|
<
|
Mai mic
|
<=
|
Mai mic sau egal
|
>
|
Mai mare
|
>=
|
Mai mare sau egal
|
Is
|
Compară două valori de tip referinţă şi returnează True dacă ambele referă acelaşi obiect
|
isNot
|
Opusul lui Is
|
Like
|
Compară două şiruri de caractere. Admite şi jokerii: ? orice caracter singular; * zero sau mai multe caractere; # o cifră
|
-
operatori de concatenare:
Operator
|
Descriere
|
+
|
Concatenează doi operanzi doar dacă ambii sunt de tip şir; încearcă să adune dacă este posibil în caz contrar
|
&
|
Face conversia la modul string a opranzilor şi îi concatenează
|
Operator
|
Sintaxa
|
Descriere
|
Not
|
Not operandLogic
|
Returnează negaţia logică a operandului
|
And, AndAlso
|
a) operandLogic1 And operandLogic2
sau
b) operandLogic1 AndAlso operandLogic2
|
a)Returnează True dacă ambii operanzi sunt True şi False în caz contrar
b)Ca la a) dar ignoră operandul2 dacă primul este False
|
Or, OrElse
|
a) operandLogic1 Or operandLogic2
sau
b) operandLogic1 OrElse operandLogic2
|
a) Returnează True dacă un operand este True şi False în caz contrar
b) Ca la a) dar ignoră operandul2 dacă primul este True
|
Xor
(sau exclusiv)
|
operandLogic1 Xor operandLogic2
|
Returnează True când operanzii au valori diferite
|
Operator
|
Sintaxa
|
Descriere
|
AddressOf
|
AddressOf numeProcedură
|
Returnează adresa din memorie a unei proceduri
|
GetType
|
GetType (tipDate)
|
Returnează obiectul aferent unui tip precizat
|
TypeOf
|
TypeOf operand is tipDate
|
Returnează True dacă operand este de tipul tipDate şi Fals în caz contrar
|
Instrucţiunile sunt unităţi lexicale ale limbajului care descriu ce trebuie să facă programul (prelucrările pe care le face). Sunt propoziţii construite cu ajutorul cuvintelor cheie şi/sau al expresiilor.
Acestea pot fi:
Instrucţiunile declarative sunt cele prin care sunt definite variabilele, constantele, procedurile, clasele, etc.
Instrucţiunile executabile sunt instrucţiunile care declanşează anumite acţiuni. Acestea pot fi:
-
Instrucţiuni de control;
-
Alte instrucţiuni de execuţie.
Expresia este o construcţie formată din cel puţin un operand şi un operator. Operanzii unei expresii pot fi variabile, constante, literali, proprietăţi sau metode ale unui obiect, funcţii intrinseci VB.NET sau definite de utilizator, alte expresii.
Întrebări
Dostları ilə paylaş: |