다음 BasketTest의 메인 메소드에서 Buyer 클래스 객체 변수의 buy 메소드를 이용하여각각의 제품을 구매한다. 이 때 각 물품은 Product 클래스를 상속받은 Tv, Audio, Computer 클래스의 객체이며 매개변수로 전달된다.만약 buyer의 소지 금액이 모자라면 메시지를 출력하고 물품을 구매하지 않고돈이 충분하다면 돈을 제하고 구매를 한다. 이 물품은 카트에 담긴다.카트에 들어가는 제품은 3개로 초기화되고 용량이 부족해지면 2배로 용량을 늘린다. public class BasketTest {public static void main(String arg[]) {Buyer b = new Buyer();b.buy(new Tv());b.buy(new Computer());b.buy(new ..
1. 은행은 계좌를 관리한다.2. 은행은 계좌를 등록한다. 3. 은행은 계좌번호로 계좌를 찾을 수 있다.4. 은행은 계좌의 소유자명으로 계좌를 찾을 수 있다.5. 은행은 모든 계좌의 목록을 볼 수 있다. 6. 계좌는 소유자명, 계좌번호, 잔고로 구성된다.7. 계좌는 입금,출금 기능과 잔고확인 기능이 있다.8. 계좌에서 잔고의 변화가 있을 때마다 거래내역에 기록된다.9. 거래내역은 거래일자, 거래시간, 계좌번호, 입금/출금여부, 거래금액, 은행명으로 구성된다. 기타 부수적인 변수와 메소드는 생략하였다. 다음은 실제 자바 코드이다. BankUI.java import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamRead..
새로운 객체를 할당하고 이를 다른 참조변수에 복사하는 경우에 대해 알아본다.결과적으로는 참조변수에 기존의 객체를 참조하는 참조변수를 대입하면 그 두 변수는 동일한 것을 가리킨다.그리고 값이 똑같다고 객체까지 같다고 할 수는 없다. public class ObjectTest {int data; public ObjectTest(int x) {data = x;} public ObjectTest clone() throws CloneNotSupportedException {ObjectTest temp = new ObjectTest(this.data);return temp;} public static void main(String[] args) {// TODO Auto-generated method stubObje..
Assertion은 예외처리의 한 가지 방법으로 코드의 논리적오류를 검사한다. import java.io.BufferedReader;import java.io.InputStreamReader; public class AssertionTest { public static void main(String[] args) {// TODO Auto-generated method stubint a; BufferedReader in = new BufferedReader(new InputStreamReader(System.in));try {System.out.println("점수를 입력하세요");a = Integer.parseInt(in.readLine());assert (a =0) : "올바르지 못..
http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html 에서Oracle Database 11g Release 2 / (11.2.0.1.0) / Microsoft Windows (32-bit) / 파일 2 개 다운로드다운로드한 2 개의 파일에서 \database\stage\Components 경로 내에 있는 파일 통합 (3개 파일) 설치 후 cmd -> sqlplus -> system/password 로 로그인. 혹은 sqlplus "/as sysdba" 로 로그인(관리자) 관리자 암호 잃어버린 경우command에서 관리자모드로 로그인 후 alter user system identified by 암호; scott ..
try-catch와 throw public class ThrowsException { static int a, b; public static void main(String[] args) {// TODO Auto-generated method stub try {a = Integer.parseInt("12");b = Integer.parseInt("0");method1();} catch (ArithmeticException e) {System.out.println("ArithmeticException 처리 루틴 : ");System.out.println(e + " 예외 발생");} catch (NumberFormatException e) {System.out.println("NumberFormatExcept..
인위적으로 발생시킨 예외 발생 코드 public class Accident { public static void main(String[] args) {// TODO Auto-generated method stubtry{int score = 200;if(score > 100){//인위적 예외발생throw new NumberFormatException("점수가 너무 크데");}}catch(NumberFormatException e){//printStackTrace와 getMessage 메소드 이용e.printStackTrace(System.out);e.printStackTrace();System.out.println(e.getMessage()+" 예외 발생!");}}} 결과 : java.lang.Number..
이너클래스란 클래스 안의 클래스를 말한다.이너클래스는 아우터클래스의 모든 것을 사용할 수 있지만,아우터클래스가 이너클래스를 사용하려면 먼저, 객체를 생성하고 자신의 객체 참조변수를 시작으로이너클래스의 멤버변수와 메소드를 참조해야한다. public class Outer { int a; public Outer() {System.out.println("아우터 생성자");} public void test() {System.out.println("test call");} public class Inner {int b; public Inner() {System.out.println("Inner class creator" + "\na's value : " + a);test(); //이너클래스는 아우터 클래스의 변수나..