1. 소개와 설치 자바특징 - 용어정의, 빈칸 채우기 ◆자바의 특징 ◈ 객체지향 언어 ◈ 플랫폼 독립 ◈ 신뢰성과 보안 ◈ 가비지 콜렉션 ◈ 바이트 코드
2. 기본 데이터 형
◆변수 명 규칙 ◈ 예약어나 공백문자는 사용할 수 없다. ◈ 반드시 문자(대문자 A~Z, 소문자 a~z)로 시작 ◈ 2째 문자부터는 숫자(0~9)와 문자, 특수문자 혼합
◈ 유니코드는 상수로 사용할 수 있다. ex> char myChar = '\u0041' ;
4. 수식과 연산자 * 연산자( 관계(최단평가), 논리, 우선순위에 대해 볼 것 ) ◈ 문자형 데이터형인 char은 수치형 데이터와 비교할 수 있다. ex> 'a' == 12 ◈ 논리 연산자인 &&, ||, ! 연산자는 항(피연산자)으로 논리형 데이터만을 취할 수 있다.
5. 레퍼런스 데이터형 클래스가 뭐하는 거냐, 배열선언, 레퍼런스 변수의 사용방법, string과 stringbuffer(편집가능)의 차이, data클래스 ◆String 클래스 ◈ String 클래스는 기본 데이터형이 아니다. String str1 = new String("Hello"); <= 일반적인 객체 생성법 String str2 = "Hello"; <= String 클래스의 경우는 = 연산자로 생성이 가능 ◈ String 클래스는 한번 저장된 문자열 내의 문자를 바꾸거나 문자열 길이를 바꾸는 것이 불가능(자체값 안변함) ◈ concat() - 인수로 주어진 문자열을 현재 저장하고 있는 문자열 뒤에 추가 ◆StringBuffer 클래스 ◈ String 클래스와의 차이 - 프로그램 실행 중에 문자열의 내용을 바꿀 수 있다.(자체값 변함) ◈ String toString() - 저장된 문자열을 String형으로 변경 ◆배열 ◈ int[] arr = new int[10]; <= 배열 선언
◈ int[][] arr = new int[3][3]; <= 다차원 배열선언 ◈ int[] arr = {{1, 2, 3}, {4, 5}, {6}}; <= 다차원 배열의 선언과 동시에 초기화 ◈ Date 클래스 Date today = new Date(); System.out.println(today); ◈ SimpleDateFormat 클래스 SimpleDateFormat dateForm = new SimpleDateFormat("hh시 mm분"); dateForm.format(today); ◈ Calendar 클래스 Calendar mow = Calendar.getInstance(); year = now.get(Calendar.YEAR); 6. 형 변환 캐스팅, 형변환 ◈ 프로모션 - 작은 데이터형을 큰 데이터형으로 바꾸는 것 ◈ 캐스팅 - 기본 데이터형 간의 형변환 ex> int 값을 char 에 저장하는 경우
7. 클래스와 메소드 uml ==> class로 구현(주), 생성자 규칙(정의) <주>클래스 정의, 메모리구조(static 변수위치), 인터페이스, 오버로딩과 오버라이딩 차이점 ◆생성자 규칙(주로 클래스의 멤버변수들을 사용하기 전에 초기화시키기 위한 용도로 많이 사용) ◈ 생성자의 이름은 클래스 이름과 같아야 함 ◈ 반드시 public으로 선언 ◈ 반환형은 선언하지 않음 ◆가비지 콜렉션 ◈ 프로그램이 사용하는 메모리 영역을 조사해서 객체의 사용여부를 판단하여 해당 객체를 참조하는 레퍼런스 변수가 있는지를 확인한 후 더 이상 사용되지 않는 객체들을 자동으로 삭제해준다. ◈ 백그라운드로 작동된다. ex> 강제로 실행시 System.gc(); 8. 상속 접근제어자 4개, this와 super, static(예제 볼 것, 인터페이스와 추상클래스 용어정리) ◆인터페이스(자체만으로 객체를 생성 못함) ◈ 상수(static final)와 메소드 헤더로 구성. (클래스의 명세서) ◈ 다중상속의 문제점이 교차상속된 여러 부모 클래스 중 어느 클래스에서 정의된 변수나 메소드 인지 명확하지 않을 때에 발생되기 때문에 자바에서는 부모 인터페이스는 상수나 메소드의 헤더만 선언하고 정의는 항상 자 식 클래스에서 하도록 해서 이런 문제를 해결한다. ◈ 인터페이스 자체도 클래스처럼 상속받을 수 있다. ex> interface 인터페이스 명 [extends] 부모인터페이스 명
◆추상클래스(자체만으로 객체를 생성 못함) ◈ 다른 클래스의 부모로만 존재한다.(상속을 위한 클래스.) ◈ 객체가 가져야할 특성만을 추상화시켜 놓은 클래스 ◈ 클래스의 공통적인 속성과 구조만을 정의하기 위한 목적으로 사용 ◈ 수퍼클래스에는 서브클래스가 반드시 가지고 있어야하는 메소드들을 가지고 있고 이런 메소드들 중 어떤 것들 은 수퍼클래스에서 그 내용을 알 수가 없고, 서브클래스에서 메소드 오버라이딩으로 만들어줘야 하는 것들이 있다. 이런 경우 메소드 앞에 abstract 명령을 붙여서 추상 메소드를 만들고 이것을 포함하는 클래스를 추상클 래스라 한다.
9. 예외처리 try catch finally 괄호 넣기(예문 보여주고 보기 예문에서 고르기) 실행 결과?(코드 보여주고 맞나? 틀리나?), throws(괄호 넣기) ◆ |
'JAVA' 카테고리의 다른 글
scanner example (0) | 2009.11.21 |
---|---|
overriding 실습 (ex:할아버지/아버지/아들) (0) | 2009.11.21 |
Java Serialization 직렬화 예제 (0) | 2009.11.06 |
자바의 기본 타입 (0) | 2009.11.06 |
자바 기초 문법 (0) | 2009.11.06 |