Ministerul Educaţiei al Republicii Moldova
Universitatea Tehnica a Moldovei
Facultatea Calculatoare Informatică și Microelectronică
Raport
Lucrare de laborator Nr.5
Disciplina: Tehnici avansate de programare
A efectuat: [Link]. IA-171
Bodorin Adrian
A verificat: [Link].
Osovschi Mariana
Chişinau 2019
1. Tema lucrării:
Crearea excepţiilor
2. Scopul lucrării:
Însuşirea modalităţilor de creare şi realizare a excepţiilor în Java;
3. Etapele de realizare:
1. Realizarea mai mulror tipuri de excepţii;
2. Realizarea excepţiilor standarte ;
3. Crearea excepţiilor poprii ;
4. Crearea interfeţii programului;
5. Prezentarea lucrării.
Varianta 8
8. Se întroduc N parametri de la consolă. Aceşti parametri -sunt elemente ale vectorului
detip double, şi in baza vectorului – se creaza clasa cu obiectul DoubleVector. Apoi,
programul afisiaza la consola valorile vectorului în formă: Vector: 2.3 5.0 7.3.
Mersul lucrării:
Listingul programului:
import [Link];
import [Link];
public class JFrame extends [Link] {
public JFrame() {
initComponents();
@SuppressWarnings("unchecked")
private void initComponents() {
jScrollPane1 =
new [Link]();
jTextArea1 = new [Link]();
jButton1 = new [Link]();
jLabel1 = new [Link]();
setDefaultCloseOperation(
[Link].EXIT_ON_CLOSE);
[Link](20);
[Link](5);
[Link](
new [Link]() {
public void keyPressed(
[Link] evt) {
jTextArea1KeyPressed(evt);
} }); [Link](jTextArea1);
[Link]("Verifica");
[Link](
new [Link]() {
public void mouseClicked([Link] evt){
jButton1MouseClicked(evt);
} });
[Link](
new [Link](255, 51, 51));
[Link] layout = new
[Link](getContentPane());
getContentPane().setLayout(layout);
[Link]( [Link](
[Link])
.addGroup([Link]()
.addContainerGap().addGroup(layout.
createParallelGroup([Link]).addComp
onent(jScrollPane1, [Link].DEFAULT_SIZE, 457,
Short.MAX_VALUE).addComponent(jButton1,
[Link])
.addComponent(jLabel1,[Link].
GroupLayout.PREFERRED_SIZE, 392,
[Link].PREFERRED_SIZE))
.addContainerGap()) );
[Link](layout.
createParallelGroup([Link]).addGrou
p ([Link]().addGap(32, 32, 32).addComponent
(jScrollPane1, [Link].PREFERRED_SIZE, 77,
[Link].PREFERRED_SIZE)
.addGroup([Link](
[Link])
.addGroup([Link]()
.addGap(33, 33, 33) .addComponent(jButton1))
.addGroup([Link]().addGap(18, 18,
18).addComponent(jLabel1)))
.addContainerGap([Link].DEFAULT_SIZE,
Short.MAX_VALUE)));
pack();
}// </editor-fold>
private void jButton1MouseClicked([Link].
MouseEvent evt) {
[Link]("");
Calcul c = new Calcul();
String s = "";
String s2 = [Link]();
try{
boolean k = true;
while(k){
int l = [Link]([Link]());
s=""+s+[Link]()+"\n";
[Link](""+c.afisare_stack());
if (l==1){
k=false; s=""+s+[Link]()
+"\n";
[Link]();
[Link](s);
catch(Exception e ){
[Link]("Verificati datele introduse");
} }
private void jTextArea1KeyPressed([Link] evt)
{try{ if([Link]()>=48 && [Link]()<=57||
[Link]()==32)
{ [Link](""+[Link]());
else
throw new RuntimeException();
catch(RuntimeException e){
[Link]("Nu ati introdus numar !");
} }
public static void main(String args[]) {
[Link](
new Runnable() {
public void run() {
new JFrame().setVisible(true);
} }); }
private [Link] jButton1;
private [Link] jLabel1;
private [Link] jScrollPane1;
private [Link] jTextArea1;
class Calcul {
Stack c = new Stack();
public int funct(String text){
String s[] = [Link](" ");
int j = 1;
for(int i=0;i<[Link];i=i+2,j=j+2){
if(j<[Link]){
[Link](([Link](s[i])+
[Link](s[j])));
else{
if(i<[Link])
[Link](s[i]);
} }
return [Link]();
}
public String afisare_stack(){
String s="";
int j=1;
for(int i=0;i<[Link]();i++,j++){
s = ""+s+[Link](i);
if(j!=[Link]())
s=""+s+" ";
return s;
}}
Rezultatele programului :
Concluzie:
În Java atunci când o excepţie este generată întotdeauna este
creat un obiect de tip corespunzător, care trebuie să fie prelucrat de
către un anumit bloc de cod. Atunci când se creează o metodă
prelucrarea excepţiei poate fi inclusă în codul, care poate genera
această metodă.
Există trei moduri de a crea excepţiile :
- blocuri try – catch ;
- declaraţia excepţiei în secţiunea throws a metodei şi
transmiterea apelantului
- capturarea excepţiei, convertirea la altă clasă şi repetarea
apelului