CloneNotSupportedException

Status
Nicht offen für weitere Antworten.

havoc16

Mitglied
Hallo,

wir haben momentan als Aufgabe bekommen verschiedene Exceptions abzufangen,
doch bei der o.g. habe ich gar keinen Plan, nicht einmal für ein einfaches funktionierndes Beispiel :(

Java:
import java.io.*;

public class Ausnahmen {

	public static void main(String[] args) {
						
		//ArrayIndexOutOFBoundsException
		
		try {			
		
		int[] werte1 = {1, 3, 5, 7, 9};
		System.out.println(werte1[5]);
		
		}
		
		catch (Exception e) {System.out.println("ArrayIndexOutOFBoundsException abgefangen");
		}
		
		
		
		
		//ArithemeticException
		
		try {
		
		 int i = 0;
		 int j = 2 / i;
		 
			}
		catch (Exception e) {System.out.println("ArithemeticException abgefangen");
		}
		
		
		
		
		
		//FileNotFoundException
		
		FileReader test;
		try {
		test = new FileReader (new File("C:\\Testobjekt\\testdatei.txt"));
		
		} catch (Exception e) {System.out.println("FileNotFoundException abgefangen");
					
		}		
		
		

		//CloneNotSupportedException
		
		/*
		
		public object clone() {
	        try {
	            ArrayList<E> v = (ArrayList<E>) super.clone();
	            v.elementData = (E[])new Object[size];
	            System.arraycopy(elementData, 0, v.elementData, 0, size);
	            v.modCount = 0;
	            return v;
	        } catch (CloneNotSupportedException e) {
	            // this shouldn't happen, since we are Cloneable
	            throw new InternalError();
	        }
	    }
		
		
		*/
		
		
		//_______________________________________________
	}

}

Würde mich über ein einfaches Beispiel mit Clone freuen, da ich I-Net nicht so wirklich was lauffähiges gefunden hatte. (zumindest habe ich es nicht zum laufen gebracht)

EDIT:

OHNE THROW
 
Zuletzt bearbeitet:

Runtime

Top Contributor
Hallo havoc16,

ich habe dir hier ein Beispiel:

Java:
package javacheck;

public class Class {

    public static void main(String[] args) {
        Class clas = new Class();
        try {
            Class cla = clas.clone();
        } catch (CloneNotSupportedException ex) {
            System.out.println("CloneNotSupportedException abgefangen.");
        }
    }

    @Override
    public Class clone() throws CloneNotSupportedException{
        return (Class) super.clone();
    }

}
 

javimka

Top Contributor
meinst du sowas?
Java:
public class CnseDemo {
	public static void main(String[] args) {
		CnseDemo c = new CnseDemo();
		try {
			Object q = c.clone();
		} catch (CloneNotSupportedException e) {
			e.printStackTrace();
		}
	}

	public Object clone() throws CloneNotSupportedException {
		return super.clone();
	}
}

//EDIT: Mist, nur Zweiter ^^
 

havoc16

Mitglied
Danke Leuts, hat mir echt weitergeholfen

so funzen tuts jetze nur noch die Optik und Kom mentare anpassen:toll:

Java:
import java.io.*;


public class Ausnahmen {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		
		
		//ArrayIndexOutOFBoundsException
		
		try {			
		
		int[] werte1 = {1, 3, 5, 7, 9};
		System.out.println(werte1[5]);
		
		}
		
		catch (Exception e) {System.err.println("ArrayIndexOutOFBoundsException abgefangen");
		}
		
		
		
		
		//ArithemeticException
		
		try {
		
		 int i = 0;
		 int j = 2 / i;
		 
			}
		catch (Exception e) {System.err.println("ArithemeticException abgefangen");
		}
		
		
		
		
		
		//FileNotFoundException
		
		FileReader test;
		try {
		test = new FileReader (new File("C:\\Testobjekt\\testdatei.txt"));
		
		} catch (Exception e) {System.err.println("FileNotFoundException abgefangen");
					
		}		
		
	
		
		
		//CloneNotSupportedException
		
		
		Ausnahmen c = new Ausnahmen();
		try {
            Object q = c.clone();
        } catch(Exception e) {System.err.println("CloneNotSupportedException abgefangen");}
        
		
        /*
		public object clone() {
	        try {
	            ArrayList<E> v = (ArrayList<E>) super.clone();
	            v.elementData = (E[])new Object[size];
	            System.arraycopy(elementData, 0, v.elementData, 0, size);
	            v.modCount = 0;
	            return v;
	        } catch (CloneNotSupportedException e) {
	            // this shouldn't happen, since we are Cloneable
	            throw new InternalError();
	        }
	    }
		
		
		
		
		Ausnahmen c = new Ausnahmen();
		
            Object q = c.clone();
        } catch(Exception e) {System.out.println("CloneNotSupportedException abgefangen");}
	
		*/
		//_______________________________________________
	}

}
 

faetzminator

Gesperrter Benutzer
Anmerkung: Man sollte in den meisten Fällen nicht grundsätzlich "Exception" abfangen. Wenn man nur eine bestimmte Exception erwartet, soll man auch nur diese abfangen. Kommt eine andere daher, deutet das auf einen Programmierfehler hin.
 
Status
Nicht offen für weitere Antworten.

Neue Themen


Oben