본문 바로가기

반응형

분류 전체보기

자바 개념 - 예외처리 ** 예외처리 : 프로그램 실행중에 사용자의 부주의로 인한 예기치 않는 상황에 대한 처리 ** 예외처리 하는 방법1. try ~ catch 절에 의해 직접 예외처리하는 방법2. 메소드명 뒤에 throw 키워드를 붙여 메소드를 호출하는 쪽으로 예외를 전파하는 방법 try{예외상황이 발생할 만한 문장들...'예외가 발생된다' 라는 말은 예외클래스의 객체가 생성된다는 말}catch(예외자료형 변수명){예외가 발생되었을 때 처리할 문장들...} ==> 자바는 대체로(일반적으로) 발생할 수 있는 예외상황에 대한 클래스가 이미 정의되어 있다.==> 예외에 대한 제일 조상클래스 : Exception ** 하나의 try 안에 여러개의 catch가 올수 있다. 다만 범위가 적은 순서대로 와야 한다!try{예외상황이 발생.. 더보기
자바 예제 - inner 클래스 만들어지는 과정 inner 클래스 예제 메뉴얼에 java.awt 는 GUI를 모아놓은 것들그 안에서 Frame 은 창을 만들 수 있는 클래스 사용방법 두가지1. 자바가 제공하는 Frame을 생성하여 사용하는 방법2. 자바가 제공하는 Frame을 확장하여 사용하는 방법 (설정하는 메소드는 set이 앞에 붙어있음) 1. 기본구성 2. MyEvent 클래스를 Hanb 클래스 안에 넣기 전 3. MyEvent를 Hanb 클래스안에 넣은 후 ( MyEvent 클래스는 Hanb클래스에서만 필요하고 다른곳에서는 필요없기에 굳이 따로 만들 필요가 없음)밖에 해도 되고 다른 파일로 만들어도 되겠지만 Hanb 클래스안에 넣음 4. new MyEvent를 굳이 생성안하고 바로 넣어도 되지 않니굳이 MyEvent 클래스를 굳이 만들어야 되니.. 더보기
자바 개념 - inner 클래스 ** inner 클래스: 클래스 안에 또다른 클래스를 정의 하는 것inner 클래스는 outer 클래스의 멤버처럼 동작한다.즉, outer클래스의 멤버변수나 멤버메소드에 자유롭게 접근가능반대로 outer 클래스에서 inner 클래스로 접근하려면 객체 생성 및 통해서만 가능하다. 만약 inner클래스가 다른 곳에서도 사용될 필요가 있다면 inner 클래스를 쓰는게 부적합하다.outer클래스에서만 필요하다면 inner클래스가 적합하다 자주 쓰이는 용도 : awt 나 안드로이드 이벤트처리 등에 자주 쓰임 컴파일시 inner 클래스는 A$B 로 만들어짐 B클래스 객체 생성시 A.B ob = new A().new B();ob.info();이런식으로 해야하기에 외부에서 많이 사용할 경우 적합하지 않다 예)class.. 더보기
자바 개념 - equals 메소드와 toString 메소드 설명 ** equals 메소드: 자바의 제일 조상인 Object의 메소드이며, 두 객체 서로 동일한 속성값을 갖고 있는지 판별하기 위해서는 자신에 맞게 재정의 하여 사용 class Person{String name;int age;public Person(String name, int age){this.name = name;this.age = age;} public boolean equals(Person){boolean re = false;if(name.euqals(ob.getName) && age == ob.getAge()){re = true;}return re;}} Person p1 = new Person("coco", 20);Person p2 = new Person("reo", 22); // goodif(.. 더보기
자바 개념 - 인터페이스 interface ** 인터페이스자바는 클래스의 다중상속을 금지한다.(다중상속이란 ? 부모클래스가 두가지이상인 경우를 말함)다중상속의 효과를 기대할 목적으로 사용하는 개념이 인터페이스이다. 인터페이스는 완전추상 개념이다.인터페이스의 구성요소는 상수와 메소드 선언부로만 구성되어야 한다.즉, body가 구체화된 메소드를 가질 수 없다.메소드이름 앞에 특별히 abstract을 안써도 자동 추상메소드이다. 인터페이스는 '구현한다' 라고 표현하며 implements 키워드를 사용한다. 인터페이스끼리는 상속이 가능하고, 다중상속이 가능하다. ** 인터페이스 끼리의 상속interface A{public void pro();} interface B extends A{public void info();} class Hanb impleme.. 더보기
자바 개념 - final 키워드 설명 및 예제 final 키워드 1. 변수이름 앞에 사용2. 메소드이름 앞에 사용3. 클래스이름 앞에 사용 일반적으로 변수라고 하는 것은 프로그램 실행 중에 변수의 값이 변할 수 있다는 것을 말한다.하지만 변수가 처음 정해진 값 이외에 다른 값을 가지면 안되는 경우가 있다면 변수 이름 앞에 final을 붙여서상수처럼 사용 할 수 있다.객체마다 메모리 잡을 필요가 없기때문에 static 붙여준다. 접근명시자 또한 public으로 해줌 형태 1. 변수앞에 final 붙임2. 변수명은 대문자를 써서 상수인 것을 표시함3. 고정값이기 때문에 메모리를 객체마다 잡을 필요 없어서 static을 붙여준다. 형태 예int age =20;public final static String ADDR = "suwon";예) int age =.. 더보기
자바 개념 - super, super() 비교 설명 ** super, super()를 비교하여 설명하시오super : 부모클래스 멤버에 접근하고자 할 때 사용super(): 부모클래스의 생성자를 요구 할 때 사용 ==> 반드시 첫번째 문장에 와야 한다 1. super 의 예(접근)2. super() 의 예(호출)3. 항상 상속클래스의 생성자안에 super() 가 생략되있다는 것 설명4. 밑에 예제는 생성자의 기본생성자 관련 class Human{public String toString(){}} class Student extends Human{public String toString(){return super.toString() + " ";}} class Human{public void info(){}} class Student extends Human{.. 더보기
자바 개념 - 추상클래스와 추상메소드 설명 추상클래스와 추상메소드 설명 부모클래스에서 자식클래스에게 물려줄 기능이 있는데 이 기능을 일반화 하지 못할때 abstract 이란 것을 사용하는 것부모클래스안에 메소드의 body를 비우고 메소드명 앞에 abstract 을 붙여야 '추상메소드' 인걸 인지한다. 추상메소드가 있는 클래스는 반드시 abstract을 붙여야 한다.추상(부모)클래스는 상속(자식)클래스에게 책임을 지게 한다. 추상클래스내의 모든 추상메소드를 재정의 하게끔 강제성 부여 또, 추상클래스는 구체화 되지 않는 메소드를 포함하므로 객체화 될 수 없다 1. 잘못된 예2. 잘된 예 모든 2차원 도형이 가져야 할 공통적인 속성과 동작을 뽑아서 일반화 시키기 class Shape{int x;int y;double area;double dulle; .. 더보기

반응형