개발자 양성과정 필기노트/JAVA26 JFrame 이벤트처리하는 5가지 방법 I. 이벤트처리 5가지 방법 1. 리스너 인터페이스를 구현하여 그 객체를 addXXXListener() 메서드의 매개변수로 전달하기 public void showFrame() { JFrame f = new JFrame("이벤트 처리"); f.setBounds(600,400,300,200); MyWindowListener listener = new MyWindowListener(); f.addWindowListener(listener); f.setVisible(true); } public static void main(String[] args) {new Ex01();} class MyWindowListener implements WindowListener{ @Override public void windo.. 2021. 11. 2. Date, Calendar 클래스 / Time패키지 I. Date 클래스 # 사용하기 - 기본생성자로 인스턴스를 생성하여 접근한다. - 인스턴스 생성시 년,월,일 값을 매개변수로 전달할 수는 있지만 해당 년,월,일로 지정되지 않음. Date day1 = new Date(); //Sun Oct 10 16:19:37 KST 2021 Date day2 = new Date(2000,5,10)//Thu Jul 05 00:00:00 KST 3900->2000년 5월 10일로 설정되지 않음. # Date클래스 메서드 1. getYear() -> [객체의년도] - [1900] 값이 리턴됨. -> 정상적인 객체년도값을 구하려면 +1900 처리를 해야한다. 2. getMonth() -> 1월:0 ~ 12월:11 의 값을 리턴한다. -> 정상적인 객체의 월 값을 구하려면 +.. 2021. 10. 10. String / StringBuffer, StringTokenizer I. String클래스 # String 클래스의 메서드 1. length() 2. equals() - 대소문자를 구별하여 두 문자열을 비교함 3. equalsIgnoreCase() - 대소문자를 무시하고 두 문자열을 비교함 4. charAt(인덱스) - 해당 인덱스에 위치한 문자1개를 리턴함 5. substring() substring(시작인덱스) - 시작인덱스부터 모든 문자열을 추출함 substring(시작인덱스, 끝인덱스) - [시작인덱스 이상] [끝인덱스 미만]에 해당하는 문자열을 추출함 6. concat(추가할 문자열) 7. indexOf( "인덱스를 찾고자하는 문자" ) - [지정한문자]의 인덱스를 리턴함 / 없으면 -1을 리턴함. 8. lastIndexOf("인덱스를 찾고자하는 문자") - 탐.. 2021. 10. 10. Random, Arrays 클래스 I. Random클래스 # 기본문법 1) Random클래스의 인스턴스 생성 후 (import java.util.Random) 2) 인스턴스.next____(); # next___( ) 메서드 - .nextInt(num) : 0 대문자알파벳 정렬 후 소문자 정렬. 3) copyOf( 배열변수명 , n ) - 해당배열을 n의 길이를 가지는 배열로 복사함. - 남는 데이터는 0으로 초기화됨 3-1) copyOfRange( 배열변수명, 시작인덱스, 끝인덱스+1 ) - 해당 배열의 데이터를 [시작인덱스]이상 [끝인덱스+1]미만의 길이로 복사함. - 마지막 지정값은 포함하지않으므로 +1로 표시한 것. 4) fill( 배열변수명, 초기화값 ) - [해당배열]의 모든데이터를 [초기화값]으로 초기화한다. 2021. 10. 9. Object클래스 내장메서드 1. getClass() 리턴-> class [패키지명].클래스명 2. getName() 리턴-> [패키지명].클래스명 - Object클래스 자체 인스턴스의 패키지는 java.lang이다. 3. hashCode() - 객체의 주소값을 정수로 변환한 값을 출력한다. 4. 기준값.equals(비교값) - 기준값과 파라미터로 전달된 비교값의 주소를 비교하여 true / false를 리턴한다. - equals()메서드는 주소값을 비교하므로, 두 객체에 저장된 데이터를 비교할때에는 적합하지않다. Person p1 = new Person("홍길동",20); Person p2 = new Person("홍길동",20); p1.equals(p2) // false - 따라서 equals()메서드를 오버라이딩하여 두객체의 .. 2021. 10. 9. Wrapper 클래스 1. 개념 - 기본 데이터타입 변수로 할 수 있는 일이 한정적이므로, 이에대한 클래스를 정의하여 클래스 내에 상수 및 다양한 메서드를 제공함으로써 기본 데이터타입에 대한 다양한 정보를 저장하거나, 다양한 작업을 수행할 수 있도록 지원한다. - 기본타입명이되, 맨 앞글자는 대문자이다. 2. Boxing / Unboxing - 기본타입데이터는 Stack공간에 실제 데이터를 직접저장하고 관리하지만, - 참조데이터타입의 객체는 Heap공간에 실제 데이터가 저장되며, 참조변수는 해당 공간의 주소값을 저장하고 관리한다. Boxing Unboxing 기본타입의 값을 Wrapper객체로 만드는 과정 Wrapper객체에서 기본타입의 값을 얻어내는 과정 Auto Boxing Auto Unboxing 기본타입 -> Wrap.. 2021. 10. 9. 오버라이딩 / 오버로딩 / 생성자와 super I. 오버라이딩 # 개념 상속받은 기존의 메서드재정의 # 메서드 오버라이딩 작성규칙 1. 슈퍼클래스 메서드 시그니처가 완전히 동일해야한다. 2. 슈퍼클래스 메서드의 접근제한자보다 범위가 좁아지는 것 가능! II. 오버로딩 # 개념 - 메서드 다중정의 - 기존의 메서드의 메서드명은 그대로둔 채 다른 형식으로 여러개 정의하는 것. - 오버로딩은 상속과 관계가 없다. III. 생성자와 super() - 서브클래스의 생성자는 슈퍼클래스의 기본생정자를 자동으로 호출한다. - 이때 슈퍼클래스의 생성자가 파라미터 생성자만 존재한다면, 서브클래스의 생성자가 슈퍼클래스의 기본생성자를 호출하면서 오류가 발생하게된다. - 해결책 1. 슈퍼클래스에 기본 생성자를 정의한다. 2. 서브클래스에서 슈퍼클래스의 파라미터 생성자를 호.. 2021. 10. 2. Import / 접근제한자 / 상속 / 생성자 I. Import # Import 개념 import 상위패키지명.하위패키지명.클래스명 ; import 상위패키지명.하위패키지명.*; # 단축키 ctrl + shift + O II. 접근제한자 # 접근제한자의 종류 1. public -> 모든 클래스에서 접근이 가능함 2. protected -> 상속관계일 때 접근이 가능함. 3. default -> 같은 패키지안에 속한 클래스에 접근이 가능함/ 접근제한자를 명시하지 않은경우에 적용된다. 4. private -> 해당 클래스에서만 접근이 가능함. # 제한의 정도 private < default < protected < public III. 상속 # 개념 - 부모클래스가 가진 멤버변수를 서브클래스에서 물려받아 별도의 선언없이 사용할 수 있도록한다. - Is .. 2021. 10. 2. 추상클래스와 인터페이스 I. 추상 -> 구현을 강제하기 위해 사용한다. 1) 추상클래스 # 기본문법 abstract class 클래스명{ . . . } 2) 추상메서드 [접근제한자] [abstract] [리턴타입] 메서드명(매개변수) ; public abstract void absMethod(int para) ; *** 중괄호 { } 쓰지않음 II. 인터페이스 # 인터페이스의 필요성 구현하도록 강제함으로써 코드를 표준화할 수 있다. 상속 관계가 없는 클래스끼리 관계부여가 가능해서 다형성을 확장시키기 좋다. 모듈 간 독립적 프로그래밍으로 개발시간을 단축시킬 수 있다. 모듈교체가 쉽다. - 인터페이스를 통해 업캐스팅을 사용하여 다형성을 적용시키면, 단순한 모듈(객체) 교체만드로 동일한 코드를 사용하여 여러 객체를 다룰 수 있게된다.. 2021. 9. 28. 이전 1 2 3 다음