Java Programming Java Programming 3장 백석대학교 인터넷멀티미디어 LAB1111호.

Slides:



Advertisements
Similar presentations
3. 메소드와 변수 SCJP 자격증 프로젝트 발표자 : 최선웅. 1. 메 소 드 개 념 2. 메 소 드 양 식 3. 메 소 드 변 수 4. 메 소 드 예 제 5. 참 고 문 헌 / 자 료 목 차.
Advertisements

SCJP. Garbage Collection  Garbage Collector( 이하 GC) 가 Heap 영역 에 할당된, 더 이상 사용되지 않는 메모리인 Garbage 를 다른 객체가 사용할 수 있도록 정리하는 것.  C++ 에서의 메모리 해제 int* v=new.
1. 2 차원 배열  배열은 동일한 데이터 유형으로 여러 개의 변수를 사용할 경우 같은 이 름으로 지정하여 간편하게 사용할 수 있도록 하는 것으로서 앞에서 1 차원 배열을 공부하였습니다.  2 차원 배열은 바둑판을 생각하면 되며, 1 차원 배열에서 사용하는 첨자를 2.
5. 접근 제한자의 이해 SCJP 자격증 프로젝트 발표자 : 노효진.
01_ 가상 함수를 사용한 다형성의 구현 02_ 오버라이딩
10. 예외 처리.
ㅎㅎ 구조체 구조체 사용하기 함수 매개변수로서의 구조체 구조체 포인터와 레퍼런스 구조체 배열.
ㅎㅎ 구조체 C++ 프로그래밍 기초 : 객체지향의 시작 구조체 사용하기 함수 매개변수로서의 구조체 구조체 포인터와 레퍼런스
클래스 class, 객체 object 생성자 constructor 접근 access 제어 이벤트 event 처리.
Chap07 상속 Section 1 : 상속의 개요 Section 2 : 멤버 변수의 상속
최윤정 Java 프로그래밍 클래스 상속 최윤정
JAVA 클래스와 멤버 2014년 4월 2일 19:00 손은경 강원대학교 데이터베이스 연구실 강원대학교 데이터베이스 연구실.
클래스 구성 요소 1개의 클래스는 최대 8개의 구성 요소를 가질 수 있다
Chapter 05. 클래스Ⅱ.
Java로 배우는 디자인패턴 입문 Chapter 5. Singleton 단 하나의 인스턴스
제 9 장 구조체와 공용체.
제 6장. 생성자와 소멸자 학기 프로그래밍언어및실습 (C++).
8.1 인터페이스 개요와 인터페이스 정의 8.2 인터페이스의 사용 8.3 인터페이스의 상속 8.4 인터페이스 참조
Lesson 6. 형변환.
5장. 참조 타입.
Chap08 다중 스레드 8.1 스레드 개요 8.2 Thread 클래스와 스레드 생명주기 8.3 스레드 생성과 사용
11장. 포인터 01_ 포인터의 기본 02_ 포인터와 Const.
6장. 클래스.
SqlParameter 클래스 선문 비트 18기 발표자 : 박성한.
자바 5.0 프로그래밍.
23장. 구조체와 사용자 정의 자료형 2.
패키지와 접근 제어 패키지에 대하여 접근 제어에 대하여.
Java 6장. 클래스 : 속성 public class SumTest {
Lesson 7. 클래스와 메소드 - 1.
10장. 예외처리.
자바 5.0 프로그래밍.
Choi, Namseok Java 기초 (객체와 클래스) Choi, Namseok
6장 클래스 6.1 클래스의 일반 구조 6.2 클래스 선언 6.3 객체의 생성 6.4 멤버 변수 6.5 멤버변수 접근 한정자
13. 연산자 오버로딩.
10강. JSP 본격적으로 살펴보기-II 스크립트릿, 선언, 표현식 지시자 주석 Lecturer Kim Myoung-Ho
7장 인터페이스와 추상 클래스.
Java 9장. 인터페이스와 예외처리 public class SumTest {
Method & library.
JA A V W. 03.
3장 상수 변수 기본 자료형 키워드와 식별자 상수와 변수 기본 자료형 형변환 자료형의 재정의.
29강 JAVA 스레드 - 스레드란? - 멀티스레드 문법 - synchronized Lecturer Kim Myoung-Ho
HTTP 프로토콜의 요청과 응답 동작을 이해한다. 서블릿 및 JSP 를 알아보고 역할을 이해한다.
Lesson 2. 기본 데이터형.
Chapter6 : JVM과 메모리 6.1 JVM의 구조와 메모리 모델 6.2 프로그램 실행과 메모리 6.3 객체생성과 메모리
15장 컬렉션 프레임워크 Section 1 컬렉션 프레임워크의 개요 Section 2 리스트 Section 3 셋
Part 4 클래스 라이브러리 Chapter 10 : 다중 스레드 Chapter 11 : 패키지와 주요 클래스
자바 5.0 프로그래밍.
컴퓨터 프로그래밍 기초 - 8th : 함수와 변수 / 배열 -
Power Java 제11장 상속.
Java Programming Java Programming 기초 2장 백석대학교 인터넷멀티미디어 LAB1111호.
JA A V W. 06.
10장 상속 Section 1 상속의 개요 Section 2 상속과 한정자 Section 3 상속과 생성자
CHAP 21. 전화, SMS, 주소록.
18강. 인터페이스 – II - 인터페이스와 다중상속 - 인터페이스를 통한 로봇 장남감 만들기 프로그래밍
디버깅 관련 옵션 실습해보기 발표 : 2008년 5월 19일 2분반 정 훈 승
클래스 : 기능 CHAPTER 7 Section 1 생성자(Constructor)
제 8장. 클래스의 활용 학기 프로그래밍언어및실습 (C++).
Lecture 04 객체지향 페러다임 Kwang-Man Ko
3. 모듈 (5장. 모듈).
발표자 : 이지연 Programming Systems Lab.
Static과 const 선언 조 병 규 한 국 교 통 대 학 교 SQ Lab..
실습 UBLAB.
2.가상머신의 탐험 도구, Oolong에 대하여 ps lab 김윤경.
1. 지역변수와 전역변수 2. auto, register 3. static,extern 4. 도움말 사용법
Java의 정석 제 8 장 예외처리 (Exception handling) Java 정석 남궁성 강의
자바 객체 지향 프로그래밍 Ps lab 김윤경.
상속 (Inheritance) private 전용부분 전용부분 공용부분 공용부분 public 기본 클래스
7 생성자 함수.
6 객체.
20 XMLHttpRequest.
Presentation transcript:

Java Programming Java Programming 3장 백석대학교 인터넷멀티미디어 LAB1111호

목 차 자바 클래스 자바 클래스와 멤버 this, static, final 지정 예약어 과제

1.자바 클래스 클래스의 기본 구성 형식 – 클래스 형식 - 단순형 클래스 접근_제한자 지정_예약어 class 클래스명 extends 상위_클래스 implements 상위_인터페이스(들) { 내용부; ----- } 형식 - 단순형 클래스 Class 클래스명{

1.자바 클래스 Class example public class Test{ int[] sub = new int[4]; float avg; public static void main(String[] args){ ----- } class Test{ void calc(){ ----

1.자바 클래스 클래스에 포함되는 멤버들 Nested Class : 중첩 클래스라 부르며 하나의 그룹 내에서 또 다른 그룹으로 표시될 수 있다. Field : 필드는 다른 언어에서 변수라고 불리는 부분이다. Construct : 생성자는 하나의 그룹이 생겨날 때 각 필드들의 데이터 값을 초기화하는 역할을 해준다. 메서드처럼 행위를 기술하는 부분이다. Method : C언어에서 함수와 비슷한 역할을 하는 것 이다.

1.자바 클래스 앞서 말한 클래스 선언의 완벽한 형태를 지난 소스

1.자바클래스 클래스 사용법 클래스 객체 생성 규칙 Example name.cal(); 클래스명 객체명 = new 클래스 생성자명(매개_변수들); Example Test name = new Test(); name.cal();

1.자바 클래스 생성자 메서드 형식 – 생성자 메서드 Example 접근_제한자 클래스명(매개_변수들) throw 예외_처리_클래스(들){ 멤버 필드 초기화 작업 } Example

1.자바 클래스 생성자 메서드의 특징들 클래스명과 동일하다.(대-소문자 포함) 결과형 리턴값을 가지지 않는다.(void도 안됨) 클래스 객체가 생성될 때 반드시 하나의 생성자가 호출된다. 멤버 필드들의 값을 초기화한다. 하나의 클래스 내부에 생성자가 하나도 없으면 자동적으로 default 생성자가 있는 것으로 인식한다. 하나의 클래스에는 매개 변수의 개수가 다르거나 매개 변수의 자료형이 틀린 생성자들이 여러 개 있을 수 있다. 생성자의 첫 번째 라인으로 this(매개 변수)생성자를 사용하여 또 다른 생성자 하나를 호출 할 수 있다.

1.자바 클래스 Example Garbage 컬렉션 C++과 같은 언어에서는 객체를 생성자를 통해 생성을 시키고 그 객체를 사용하고 난 후에는 메모리 상에서 제거하기 위해 소멸자를 통해 소멸시켜야 함. 그러나 자바에서는 스스로 불필요한 메모리를 삭제하는 방법을 사용한다. 이 때 불필요한 메모리를 Garbage(쓰레기)라고 부른다.

2.자바 클래스와 멤버 접근 제한자와 멤버 필드 접근 제한자의 종류 private : 가장 엄격한 제한자로 선언한 멤버가 자신의 클래스 내부에서만 사용되도록 제한한다. protected : private와 비슷한 속성을 지난 제한자로 자신의 클래스 내부와 상속받은 하위 클래스 그리고 동일한 파일 내부 그리고 동일한 폴더에서만 사용되도록 제한한다. package : 제한자를 사용하지 않았을 때를 나타내며 자신의 클래스 내부와 동일한 패키지들 간에 그리고 동일한 파일 내부에서만 사용되도록 한다. public : 객체가 선언되어 있는 곳이면 어디에서든 사용할 수 있다.

2.자바 클래스와 멤버 형식 – private 접근 제한자 멤버 필드 멤버 메소드 생성자 메서드 클래스 private [지정_예약어] 결과형_리턴값 메소드명(매개_변수들)[throw 예외_클래스(들)]{ 내용부 } 생성자 메서드 private 클래스명(매개_변수들) [throws 예외_클래스(들)]{ 내용부; } 클래스 Private [지정_예약어] class 클래스명 [extends 상위_클래스][implemets 상위_인터페이스들]{ 내용부; } private, protected, public의 형식이 같으므로 생략

2.자바 클래스와 멤버 example - private

2.자바 클래스와 멤버 example - protected

2.자바 클래스와 멤버 example – package example – public 멤버 필드와 멤버 메소드 필드에 대한 지정 예약어들 static : 하나의 클래스로 발생된 모든 객체가 공유하는 필드를 선언할 때 사용된다. final : 상수형 필드로 한번 값이 정해지면 그 값을 변경하지 못하는 필드를 선언할 때 사용한다. static final : static과 final의 속성이 혼합된 형태이다. transient : 임시 메모리 필드로 네트워크로의 전송이나 파일로의 전송 시에 그 값 자체가 없는 것과 같은 효과를 나타낼 필드를 선언할 때 사용한다.

2.자바 클래스와 멤버 메서드에 대한 지정 예약어들 static : static 지정 예약어로 선언된 메소드를 처리하고자 할 때 사용하는 예약어로 static 메소드 내부에는 static 메서드만 올 수 있다. 또한 이 메서드 역시 클래스명으로 접근할 수 있다. final : 생성자에서 보았듯이 모든 메소드는 오버로딩기능이 있다. Final은 필드와 마찬가지로 변경 불가 메소드를 만드는 것이다. static final : static과 final의 기능을 혼합한 형태 abstract : 내용부 정의가 없는 추상 메소드를 선언할 때 사용한다. synchronized : 특정 메소드의 실행이 여러 개의 스레드로 인하여 중첩되어 수행되는 것을 방지하기 위해서 사용하는 예약어이다. native : 순수한 자바의 개념으로 구현할 수 없거나 이미 만들어진 다른 언어의 코딩을 자바 내부 메소드의 코딩처럼 사용하기 위해 선언된 메소드의 지정 예약어로 사용한다.

3.this, static, final 지정 예약어

3.this, static, final 지정 예약어 형식 – 0번째 매개 변수 0번째 매개 변수란 모든 매겨 변수보다 우선한다는 뜻. 형식 – 모든 멤버 필드의 접근 객체 this.Field 그렇다면 앞서 본 예제를 어떻게 바꿔야 올은 값이 나올까?

3.this, static, final 지정 예약어 static을 공용 변수를 위한 지정 예약어라고 말한 이유는 앞서 예약어 부분을 하면서 Field라던지 메소드에 붙은 예약어 static이 붙은 경우는 바로 접근이 가능했다. static은 지역변수로 사용이 불가능 하다. 이는 어찌 보면 멤버 필드라기 보다는 클래스 필드라 해야 옳을 것이다. 사실 클래스로 넘어오면서 메모리 부분을 해야 하지만 이 경우는 책을 보고 스스로 공부해야 한다. 아무런 실습도 없이 이 시간에 메모리 얘기를 하는 것은 낭비다. 개인적으로 곡 공부를 했으면 한다.

3.this, static, final 지정 예약어

3.this, static, final 지정 예약어 #define 매크로 변수의 선언을… 매크로 변수처럼 변수의 상수화를 하는 것이다. 미리 선언 해놓고 그 값은 절대 변경 할 수 없다. Example final double pi = 3.141592;

4.과제 Class Jbank{ private String name; private double don; private static float iyul; } 과제. 이 클래스의 main() 메소드를 완성해 보자. 입력 및 출력결과 1.신규가입 2. 이율변경 3.등록인원정보 4.종료=>1 ==신규 가입== 이름 = 윤진석 입금 금액 = 10 신규 가입이 2008년 3월 27일 4시 44분에 처리 되었습니다. 입금한 금액은 10원 입니다. 현재 적용 이율은 4.78%입니다. ==신규 가입 끝==

4.과제 1.신규가입 2. 이율변경 3.등록인원정보 4.종료=>2 관리자 패스워드를 입력하세요 : 1111 현재 4.78%의 이율이 적용되고 있습니다. 얼마로 변경하시겠습니까? 적용이율 =7 모든 고객에게 7%로 변경 적용됩니다. 1.신규가입 2. 이율변경 3.등록인원정보 4.종료=>3 ===현재 등록 고객 정보=== 이름 금액 이율 ================ 정철호 10000000 원 7% 1.신규가입 2. 이율변경 3.등록인원정보 4.종료=>4 은행 영업을 마감합니다. 수고하셨습니다!!!