목록Java (100)
디케이
1. 예외 처리 프로그램을 만들다 보면 수많은 에러를 만나기도 하지만 문법적인 오류가 아닌 예외 사항이 발생하기도 한다. 이때, 이에 대한 적절한 처리가 필요한데 간단한 예외의 경우 if 조건문으로 처리할 수 있다. 하지만 이렇게 되면 정상적인 if 코드와 구분이 어렵다. 이럴 때 사용할 수 있는 게 바로 try catch다. try catch의 형태는 아래와 같다. try { 예외가 발생할 구문 } catch (Exception e) { 처리할 구문 } try의 안에는 예외가 발생할만한 부분을 넣어주고 catch의 괄호 안에 해당하는 예외와 같은 예외가 발생하면 try 구문을 더 실행하지 않고 catch로 넘어가 중괄호 안의 구문을 실행한다. 자바 컴파일러는 예외가 발생하는 순간 그 ..
DAO 정의 Data Access Object의 약자로 간단히 Database의 data에 접근을 위한 객체입니다. Database에 접근을 하기위한 로직과 비즈니스 로직을 분리하기 위해서 사용을 합니다 DAO 설명 웹서버는 DB와 연결하기 위해서 매번 커넥션 객체를 생성하는데, 이것을 해결하기 위해 나온것이 컨넥션 풀입니다. ConnectionPool 이란 connection 객체를 미리 만들어 놓고 그것을 가져다 쓰는것입니다. 또 다쓰고 난 후에는 반환해 놓는 것. 하지만 유저 한명이 접속해서 한번에 하나의 커넥션만 일으키지 않고 게시판 하나만 봐도 목록볼때 한번, 글읽을때마다 한번, 글쓸때 한번 등등… 엄청나게 많은 커넥션이 일어나기에, 커넥션풀은 커넥션을 또 만드는 오버헤드를 효율적으로 하기 위해..
- 처음 입력되는 정수는 캐릭터의 개수입니다. - 한 캐릭터의 정보는 2번에 나눠서 입력됩니다. - 처음 : 이름, 태어난 해, 직업 - 나중 : 힘, 지능, 민첩 - 의적, 도적, 상인 클래스는 캐릭터 클래스를 상속받아야 합니다. - 캐릭터 클래스에는 get나이, 자기소개, 공격 메서드가 있어야 합니다. - 의적, 도적, 상인 클래스에는 a무기 변수가 있어야 합니다. - 검, 도끼, 지팡이 클래스는 무기 클래스를 상속받아야 합니다. - 무기 클래스에는 작동 메서드가 있어야 합니다. - 나이는 현재년도에서 태어난 해를 빼면 됩니다. - 의적의 기본템은 검(공격력 10) 입니다.(생성자로 그렇게 되도록 만들어주세요.) - 도적의 기본템은 도끼(공격력 15) 입니다.(생성자로 그렇게 되도록 만들어주세요.) ..
github 계정에서 저장해둔 히스토리 중 돌아가고 싶은 코딩 접속 commit 번호 복사 3. git Bash here 실행 4. git checkout -f commit number(복사해둔 커밋넘버 붙여넣기) 5. jsp에서 F5키 실행 후 작업진행 ** git checkout master : 4번 항목 실행 전 코딩으로 복원된다.
클래스 형변환 부모타입으로 자식객체를 참조하게 되면 부모가 가지고 있는 메소드만 사용할 수 있다. 자식객체가 가지고 있는 메소드나 속성을 사용하고 싶다면 형변환 해야 한다. 형변환 public class Car{ public void run(){ System.out.println("Car의 run메소드"); } } public class Bus extends Car{ public void ppangppang(){ System.out.println("빵빵."); } } 상속관계란 is a 관계라고 말했었습니다. Bus는 Car다. 라는 관계가 성립되는 것이죠. 현실에서도 우리는 버스를 가리키면서 차다. 라고 말하곤 합니다. 부모타입으로 자식객체를 참조할 수 있다. 부모타입으로 자식객체를 참조하게 되면 부모..
오버라이딩 오버라이딩이란 부모가 가지고 있는 메소드와 똑같은 모양의 메소드를 자식이 가지고 있는 것이다. 즉 오버라이딩이란 메소드를 재정의 하는 것이다. 메소드 오버라이딩 Car 클래스를 상속받은 Bus 클래스는 부모클래스가 가진고 있는 run() 메소드를 잘 사용한다. //run 메소드를 가지고 있는 Car클래스 public class Car{ public void run(){ System.out.println("Car의 run메소드"); } } //Car 를 상속받는 Bus 클래스 public class Bus extends Car{ } public class BusExam{ public static void main(String args[]){ Bus bus = new Bus(); bus.run()..
class가 인스턴스화 될때 생성자가 실행되면서 객체의 초기화를 한다. 그 때 자신의 생성자만 실행이 되는것이 아니고, 부모의 생성자부터 실행된다. 부모 생성자 public class Car{ public Car(){ System.out.println("Car의 기본생성자입니다."); } } public class Bus extends Car{ public Bus(){ System.out.println("Bus의 기본생성자입니다."); } } 생성자 테스트 public class BusExam{ public static void main(String args[]){ Bus b = new Bus(); } } 결과 Car의 기본생성자입니다. Bus의 기본생성자입니다. new 연산자로 Bus객체를 생성하면, ..
추상 클래스란 구체적이지 않은 클래스를 의미한다. 독수리, 타조는 구체적인 새를 지칭하는데 새, 포유류 같은 것은 구체적이지 않다.이런 것을 구현한 클래스를 추상 클래스라고 한다.추상 클래스 정의하기 추상 클래스는 클래스 앞에 abstract 키워드를 이용해서 정의한다. 추상 클래스는 미완성의 추상 메소드를 포함할 수 있다. 추상 메소드란, 내용이 없는 메소드 이다. 즉 구현이 되지 않은 메소드이다. 추상 메소드는 리턴 타입 앞에 abstract라는 키워드를 붙여야 한다. 추상 클래스는 인스턴스를 생성할 수 없다. public abstract class Bird{ public abstract void sing(); public void fly(){ System.out.println("날다."); } } ..
접근 제한자란 클래스 내에서 멤버의 접근을 제한하는 역할을 한다.접근제한자의 종류 public 어떤 클래스든 접근할 수 있다는 것을 의미 protected 자기 자신, 같은 패키지, 서로 다른 패키지다 하더라도 상속받은 자식 클래스에서는 접근할수 있다는 것을 의미 private 자기 자신만 접근할 수 있다는 것을 의미 접근제한자를 적지 않으면 default접근 지정자 자기자신과 같은 패키지에서만 접근할 수 있다는 것을 의미 순서 public > protected > default > private public class AccessObj{ private int i = 1; int k = 2; // default접근 제한자 public int p = 3; protected int p2 = 4; } Acce..
상속이란? 부모가 가진것을 자식에게 물려주는것을 의미한다. 노트북은 컴퓨터의 한 종류다. 침대는 가구의 한 종류다. 혹은 침대는 가구다. 소방차는 자동차다. 이렇게 말할 수 있는 관계를 is a 관계 혹은 kind of 관계라고 한다. Car 를 상속받은 Bus 를 class로 표현하는 방법 public class Car{ } public class Bus extends Car{ } 자바는 클래스 이름 뒤에 extends 키워드를 적고 부모클래스 이름을 적게 되면 부모 클래스가 가지고 있는 것을 상속받을 수 있게 된다. 상속이란 부모가 가지고 있는 것을 자식이 물려받는 것을 말한다. 즉, 부모가 가지고 있는 것을 자식이 사용할 수 있게 된다. 부모클래스에 메소드 추가하기 Car에 run()메소드를 추가 ..