'JAVA/팀장님 JAVA수업'에 해당되는 글 20건

  1. 2012.07.03 팀장님 수업 8
  2. 2012.06.29 팀장님 수업 7
  3. 2012.06.22 팀장님수업 6번째 보충자료(접근 제한자)
  4. 2012.06.22 팀장님수업6번째 보충자료 (캡슐화 은닉화)
  5. 2012.06.22 팀장님수업6
  6. 2012.06.14 팀장님수업5
  7. 2012.05.31 팀장님수업4
  8. 2012.05.24 팀장님 수업3
  9. 2012.05.17 팀장님 수업 1
  10. 2012.05.17 팀장님 수업 2
posted by changhozz 2012. 7. 3. 16:13

Wrapper Class -
 
primitive type은 Class는 기본적으로 java.lang.*; 의 하위클래스이다.
 
Wrapper Class를 쓰는 이유는 primitive Type의 변수를 객체화 할 때 쓰인다.
8개의 primitive Type에 맞는 Class들을 Wrapper Class라고 통칭
 
Primitive type의 값을 Wrapper Class로 만드는 것을 Boxing이라 한다.
Wrapper Class Object를 primitive type값으로 만드는 것을 Unboxing이라한다.
 
Wrapper Class가 쓰여야 할 자리에 Primitive Type의 값이 사용되면,
자동적으로 boxing을 해주는데, 이를 Auto Boxing이라 한다.
 
Primitive Type의 값이 쓰여야 할 자리에 Wrapper Object를 사용하면
자동적으로 unboxing을 해주는데, 이를 Auto Unboxing이라 한다.
 
--------------------------------------------------------------------------------

Exception -
 

 
Exception - program실행 시 컴퓨터가 예상치 못해 발생한 오류/예외
 
Exception은 -> Throwable -> Object를 상속받는다.
 
일반적인 예외(Checked Exception) - compile시 발생하는 예외이다.
                                   반드시 예외처리를 해야만 한다.
 실행시 예외(Unchecked Exception) -프로그램이 실행되다가 발생하는 예외이다.
                                   예외처리를 하지 않아도 컴파일에는 무리가 없다.
 
Exception 처리 구조 - Try~catch()~finally
 
catch문 사용시 하위 예외객체일수록 위로, 상위 예외객체일수록 밑으로
정의해 줘야한다.
일반적으로 예외에서 가장 상위인 클래스가 Exception이다.
그러므로 가장 아래쪽에 정의 해야 한다. 이렇게 하는 이유는
예외는 상위 클래스가 모든 예외를 가지고 있으므로 가장 위에 정의를
하게 되면 모든 예외를 처리하게 되므로 두번째 catch문 부터는
절대로 비교 수행할 수 없게 된다.


하나의 메서드 내에 여러 개의 try-catch문이 사용될 수 있으며, try블럭 또는 catch블럭에
또 다른 try-catch문이 포함될 수 있다.
catch블럭의 괄호 내에 선언된 변수는 catch블러 내에서만 유효하기 때문에,
모든 catch블럭에 참조변수 'e'하나 만을 사용해도 된다.
하지만, catch블럭 내에 또 하나의 try-cath문이 포함된 경우, 같은 이름의 참조변수를
사용해서는 안된다.

즉 catch블럭의 괄호 내에 선언된 변수는 catch블럭 내에서만 유효하기 때문에,
catch문안에 try-catch문은 서로 참조변수 이름이 달라야한다.


메서드에 예외 선언하기

메서드에 예외를 선언하려면, 메서드의 선언부에 키워드 throws를 사용해서 메서드 내에서
발생할 수 있는 예외를 적어주기만 하면 된다. 그리고,예외가 여러 개일 경우에는
쉼표(,)로 구분한다.
ex)
void method() throws Exception1, Exception2, Exception3  ......{
//메서드 내용
}

posted by changhozz 2012. 6. 29. 10:05



Abstract란 구체적인 개념으로 부터 공통된 부분들만 추려내어 일반화 한것을 말한다.

Abstract method란
메소드 뒤의 중괄호{ } 를 생략하여, 사실상 내용이 없는 메소드를 의미한다.

Abstract Method의 특징으로는
Abstract Class를 상속받는 자식 Class에서는 Abstract Method를 반드시 구현해주어야 한다.
(Abstract Class란 Abstract Method가 1개이상 들어가 있는 경우를 말한다.)

Abstract Class의 목적은
여러개의 클래스들이 상당수의 공통된 점을 가지고 있고 소수의 다른 점들이 있을 때
개별적으로 클래스들을 따로 작성하는 것보다 abstract클래스를 이용하는 것이 효율적이기 때문이다.

---------------------Abstract 추가 설명---------------------

추상 클래스를 쓰는 이유는?
서로 다른 클래스들이 상당수의 공통된 점을 갖고 있지만,
소수의 다른점들이 있을때 이들의 공통된 점을 구성해놓고
각각의 다른 부분들만 구현하는 것이 효율적이기 때문.

추상클래스는 추상메서드를 포함하고 있다는 것을 제외하고는 일반클래스와 전혀
다르지 않다. 추상클래스에서도 생성자가 있으며, 멤버변수와 메서드도 가질 수 있다.

추상메서드
추상 메서드란 메서드를 부모클래스에 선언만 해놓고, 실제 수행될 내용은 작성하지 않는것이다.
그이유는 메서드의 내용이 자식 클래스에 따라 달라질 수 있기 때문이다.
따라서 추상클래스로부터 상속받는 자손클래스는 오버라이딩을 통해 부모클래스인 추상클래스의
추상메서드를 모두 구현해주어야 한다.

--------------------------------------------------------------------


Interface란
abstract Class의 한 종류로써, 기본적으로 abstract class가 가지는 특징을 가지고 있다.
또한 자바에서 유일하게 다중상속이 가능하다.

Interface가 가질수 있는 멤버
*public static final 멤버변수
-공유를 하며 값을 바꿀수 없는 static final 멤버 필드만 포함 할 수 있다.
-만약 static final을 적지 않는다 하더라도 자동으로 static final로 인식된다.
*public abstract 멤버 메서드
-자식 Class에서 Overroading 시 정의하기 나름이기 때문에 모호하지 않다.
-메소드에 abstract를 명시하지 않아도 abstract 메소드로 인식한다.
-자식 Class에서 Overroading시에는 abstract를 붙히면 안된다.
*public static inner 클래스

Interface를 상속받는 Class는 implements 예약어를 사용한다.
-----------------------------Interface 추가 설명-----------------------------------
interface
인터페이스는 일종의 추상클래스이다.

인터페이스와 추상클래스의 다른점은 일반 메서드 또는 멤버변수를 구성원으로 가질 수 없다.
오직 추상메서드와 상수만을 멤버로 가질 수 있으며, 그 외의 다른 어떠한 요소도 허용하지 않는다.
또한 자바에서 유일하게 다중상속이 가능하다.
또한 abstract클래스에서는 메서드에 abstract를 꼭 붙혀야 하지만,
Interface에서는 abstract를 안붙혀도 자동 인식되고, 멤버변수에 static final을 붙히지 않아도
자동인식된다.

'JAVA > 팀장님 JAVA수업' 카테고리의 다른 글

팀장님 수업9  (0) 2012.07.06
팀장님 수업 8  (0) 2012.07.03
팀장님수업 6번째 보충자료(접근 제한자)  (0) 2012.06.22
팀장님수업6번째 보충자료 (캡슐화 은닉화)  (0) 2012.06.22
팀장님수업6  (0) 2012.06.22
posted by changhozz 2012. 6. 22. 16:42

 

 

 같은 클래스

같은 패키지 

Sub클래스 

다른 클래스 
 public

yes 

yes 

yes 

yes 

 protected

 yes

yes 

yes 

 

 default

yes 

yes 

 

 

 private

yes       

 

접근수정자

① public - 접근 제한이 없다. public 메서드는 어느곳에서든지 호출이 가능하다. 이것은 가장 공통적으로 사용되는 접근수정자이다.

② protected - 정의된 클래스내부에서 호출하거나 서브클래스 내부에서 호출되어질수있다. 또한 같은 패키지안에서 사용할수있다.

③ private - 정의된 클래스 내부에서만 호출되어질 수 있다, 내부적으로 클래스안에서만 사용된다.

④ default - 접근수정자가 기술되어 있지 않으면, 메서드는 default 접근이다.

'JAVA > 팀장님 JAVA수업' 카테고리의 다른 글

팀장님 수업 8  (0) 2012.07.03
팀장님 수업 7  (0) 2012.06.29
팀장님수업6번째 보충자료 (캡슐화 은닉화)  (0) 2012.06.22
팀장님수업6  (0) 2012.06.22
팀장님수업5  (0) 2012.06.14
posted by changhozz 2012. 6. 22. 15:59
 캡슐화란?
= 하나의 클래스를 블랙박스화 하는 것

즉, 클래스 안에서 데이터에 해당하는 필드는 모두 Private으로 선언해서 외부에서 직접접근하지 못하게 만듬
외부에는 public으로 선언된 메소드(인터페이스)만을 공개하는 것

이렇게 어떤 클래스의 내부 데이터를 감춰놓고 외부에서는 오직 해당 클래스에서
제공하는 public 메소드(인터페이스)로만 그 객체의 내부 데이터를 변경 또는 제어할 수 있게 만드는 것을
캡슐화라고 한다.

= 다른 클래스에서 어떤 클래스의 기능을 사용할 때
그 내부의 구현에 대해 전혀 몰라도 된다는 것이다.

즉, 단지 공개된 인터페이스를 이용하면 그런 결과가 이뤄진다는 것을 보장하기만 하면 되는 것이다.

 

 

 

1. 은닉화(캡슐화)

자바의 객체는 속성 / 기능으로 이루어져있다. 이때 중요한 속성은 private 키워드로 숨겨놓고

기능해당하는 메소드에 public을 붙여 중요 속성(변수)에 접근하는 방법을 말한다.

즉 은닉화를 하면 변수에 직접적으로 접근을 하지 못한다 반드시 메소드를 통하여 하게 된다.

접근하는 메소드에는 2가지가 있다.

1. getter : 가져오는 녀석

2. setter : 셋팅하는 녀석

쉬운 예를 들어보자.

자판기가 있다 이 자판기에는 변수(커피,프림,컵)이 있고 기능(섞는)이 있다.

우리가 커피를 뽑을때 이 자판기의 변수에 직접 접근해서 섞어서 마시면 자판기의 의미가 없고,

시간도 낭비하며, 결과가 제대로 나오지 않을 수도 있다. 반면에 기능버튼을 누르기만 하면 우린

제대로 된 결과를 얻을 수 있다. 변수에 직접 접근하지 않고도 말이다. 이게 은닉화다.

캡슐화는 하나의 목적에 대한 모든 메서드가 하나의 클래스에 담겨하 한다는것이다.

계산기가 있다고 하자. 덧셈, 뺄셈 등 각 연산이 클래스마다 나뉘어져 있다면 사용이 불편할것이다.

class Info {

//정보에 해당하는 필드들(private) ; 다른 클래스에서 접근할 수 없도록..

private int age;

private String name;

//셋터와 겟터들(public) ; 다른 클래스에서 접근해서 사용하도록..

public int getAge() {

return age;

}

public void setAge(int age) {

this.age = age;

}

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

}

public class PeoPle {

public static void main(String[] args) {

new PeoPle().makePeople();

}

public void makePeople() {

Info pCho = new Info();

pCho.setName("조병덕");

pCho.setAge(27);

System.out.println(pCho.getName());

System.out.println(pCho.getAge());

그림에서 볼 수 있는데 필드에 접근을 할때 바로 객체.필드로 바로 접근하는것이 아니라 객체.get / set을 통하여 접근을 하는것이다. 이것은 자바의 목적중에 하나인 보안을 위해 매우 중요한 사항이다.

그러므로 중요한 필드에는 private를 붙이고 get과 set메서드를 활용하자!

 

 

따라서 은닉화란 캡슐화의 장점중에 하나로 속하는 것으로,

객체를 생성시 객체 내부에 있는 멤버 변수의 값을 접근 제한자를 이용하여 외부에 공개하지 않고 getter와 setter를 이용하여, 접근하는 Beans 방식을 은닉화라 한다.

 

 

 

'JAVA > 팀장님 JAVA수업' 카테고리의 다른 글

팀장님 수업 7  (0) 2012.06.29
팀장님수업 6번째 보충자료(접근 제한자)  (0) 2012.06.22
팀장님수업6  (0) 2012.06.22
팀장님수업5  (0) 2012.06.14
팀장님수업4  (0) 2012.05.31
posted by changhozz 2012. 6. 22. 00:21

캡슐화(Encapsulation)란
1)객체지향의 특징
2)객체의 내부 변수를 수정했다 하더라도 사용하는
외부 객체에서는 이것을 인식하지못하며, 별다른 영향을
받지 않아 독립적인 면을 유지하는 장점이 있다.

은닉화(Black Box)
1)정보 은닉이라는 것은 캡슐화의 장점에 속하는 것이다.
2)객체를 생성시 객체 내부에 있는 멤버 변수의 값을 외부에
공개하지 않고 getter와 setter를 이용하여, 접근하는
Beans 방식을 은닉화라 한다.
3)외부에서의 접근 차단은 접근 제한자를 이용한다.

접근 제한자
Private : 현재 객체 내에서만 허용
Default : 같은 패키지(폴더)내에 있는 객체들만 허용
Protected : 같은 패키지(폴더)에 있는 객체와 상속 관계의 객체들만 허용
Public : 모든 접근을 허용

Private < Default < Protected < Public

오버라이딩(Overriding)
오버라이딩은 "메소드 재정의"라고도 불리며 서로 상속관계로
이루어진 객체 관계에서 부모 클래스가 가지는 메소드를 자식클래스에서
재정의 하는 것을 의미한다.

super란?
현재 객체의 super클래스를 참조한다.

super()란?
부모 객체내의 생성자를 의미한다.
특징: 반드시 생성자의 첫 행에 정의해야한다.
장점:super()를 이용하여 부모 클래스의 생성자를 호출 할 수 있다.

final
변수에 final을 적용시키면 프로그램이 끝날 때까지 값을
변경하지 못하는 상수화된다.

메서드에서의 final
메서드에 final을 적용하면 상속관계에 따른 오버라이딩 확장을
할 수 없게 된다.

클래스에서의 final
클래스에 final을 적용하면 더 이상 상속을 허용하지 않는
종단 클래스가 된다.

static
일반적으로 멤버변수 나 메서드들은 해당 객체가 생성될 때 객체가
생성된 메모리 공간에 같이 존재하게 되지만 static으로 선언된
메서드나 멤버변수들은 static 영역에 생성되면서 모든 객체들이
사용할 수 있도록 공유개념을 가진다.

static 변수로의 의미
1)static으로 선언되었으면 객체를 생성하지 않고도 사용할 수 있다.
2)static으로 선언된 변수는 모든 객체가 공유하는 변수가 된다.
3)객체를 생성하지 않고서도 접근 가능하다.

static 메서드의 의미
1)static 변수와 마찬가지로 모든 객체들이 사용할 수 있도록
공유개념을 가진다.
2)static 메서드 안에서는 static이 아닌 멤버변수들은 참조 할 수 없다.

 

'JAVA > 팀장님 JAVA수업' 카테고리의 다른 글

팀장님수업 6번째 보충자료(접근 제한자)  (0) 2012.06.22
팀장님수업6번째 보충자료 (캡슐화 은닉화)  (0) 2012.06.22
팀장님수업5  (0) 2012.06.14
팀장님수업4  (0) 2012.05.31
팀장님 수업3  (0) 2012.05.24
posted by changhozz 2012. 6. 14. 17:52

오늘 수업내용

배열(Array) - 같은 자료형들끼리 모아두는 하나의 묶음을 뜻함.

장점:원하는 것을 한번에 찍을수있다.
단점:수정삭제가 힘들다.(배열들 사이에 새로운 내용을 추가하려면
다시만들어야된다. 삭제할 경우도 마찬가지)

초기화 - 생성시 값을 넣는것.

Primitive Type Array  -
Java의 Primitive Type과 같이 기본자료형들을 가지고 배열을 생성하는 것을 말한다.

Primitive Type의 종류 6가지
boolean, char
byte, short, int, long
       float, double


Reference Type Array -
배열 안의 자료값들이 기본 자료형이 아닌 객체의 주소가 맵핑 된다.
ex)
String [] arr =new String[3];

arr[0]="java";
arr[1]="Array";

Array Memory Allocation Method -
Stack에는 변수명이 들어가고
Heap에는 값(데이터)가 들어간다.

ex)

int [] a =null ;
int [] b =new int[4];
int [] c = {3,2,4,5};
변수명 a 는 Stack에 a라는 방에 메모리가 할당이 되지만
Heap에는 값이없으므로 공간이 할당되지 않음.
변수명 b 는 Stack에 b라는 방에 메모리가 할당이 되고
Heap에는 4개의 '0'값이 들어있는 방이 할당됨
변수명 c 는 Stack에 c라는 방에 메모리가 할당이 되고
Heap에는 4개의 방에 각각 3,2,4,5값이 들어간다.

 

 

-----------------------------------------------------------------------------

상속(Inheritance)이란?
부모가 소유하고 있는 재산의 일부를 자식이 물려받는 것을 말한다.
객체지향의 개념에서는 클래스 간의 관계라 할 수 있다.

has a - 특정 객체 내에서 다른 객체를 가지고 있는 것을 의미한다.
is a - 특정 객체가 다른 객체에게 자신의 능력을 포함시켜주는 상속관계를 의미한다.

Java에서 상속의 특징!
1) 단일 상속만 가능하다.(다중 상속 불가능)
부모클래스는 자식클래스를 여러개 갖을 수 있지만
자식클래스는 부모클래스를 하나만 상속받을 수 있다.
2)java.lang.Object를 무조건 상속받도록 되어있다.


Base Class (기본클래스)    상속을 주기위해 준비된
Super Clss (슈퍼 클래스)                 <--     특정 클래스를 의미
Parent Calss (부모 클래스)


Derivation Class(유도 클래스)                     특정 클래스로 부터
Sub Class (하위 클래스)               <--       상속을 받아 새롭게 정의되는
Child Class (자식 클래스)                           클래스를 위미한다.


상속의 코드 구성

class sub클래스명 extends super클래스명 {
}


상속의 장점
1)잘 설계된 클래스를 재사용 가능하다.
2)재사용으로 인해 코드의 간결성이 높아진다.
3)잘 정의돈 super클래스가 있다면, sub클래스의 작성이 간편해지고,
개발 시간이 단축 된다.


더블클릭하고 F3누르면 상속받은곳 클래스로 이동
Alt + 화살표 = 상속되고 받은 클래스 이동

 

'JAVA > 팀장님 JAVA수업' 카테고리의 다른 글

팀장님수업6번째 보충자료 (캡슐화 은닉화)  (0) 2012.06.22
팀장님수업6  (0) 2012.06.22
팀장님수업4  (0) 2012.05.31
팀장님 수업3  (0) 2012.05.24
팀장님 수업 1  (0) 2012.05.17
posted by changhozz 2012. 5. 31. 00:07


new = 객체의 데이터가 저장될 메모리공간을 할당해 주기위해 사용되는 연산자이다.

오버로딩이란?
★하나의 클래스 내에★ 인수의 개수나 형이 다른 동일한 이름의 메소드및 생성자를 여러 개
정의하는것.

오버로딩 - Method 오버로딩
         - Constructor 오버로딩
------------------Method 오버로딩--------------------
ex ) setDate(년,월,일)
     setDate(월,일)
ex )  public void plus (int a, int b){
 System.out.println(a+b);
}
      public void plus (int a, int b, int c){
 System.out.println(a+b+c); 
}

파라미터의 개수, 형에 따라서..

static이 붙어있으면 객체를 생성안하고 부를수있음.
class명.메소드명

-----------------Constructor 오버로딩-----------------
오버로딩은 생성자를 이용하여 객체를 생성시에도
적용 가능함.

public class Mp3 {

public String color = "";
public int price = 0;

public Mp3(){
}               <---------default 생성자

public Mp3(String param1, int param2){
this.color=param1;
this.price=param2;
}


public static void main(String args [] ){
Mp3 mp3_1 = new Mp3();

Mp3 mp3_2 = new Mp3("red",10000);
}

-------------------------------------------------
this란 특정 객체 내에서 현재 객체 자신을 의미하는 참조 변수이다.

this는 자기자신 클래스를 가르킴  ==> ThisTest
this를 쓰는 이유는 명확하게 하기위해서.


 this.a = a;
  멤버변수a에┘  └피라미터 a를 넣어라.

------------------------------------------------
this() 란?
"현재 객체내의 생성자를 의미한다."
반드시 생성자의 첫 행에 정의해야한다. (다음행에는 무엇이오든 상관없음)
장점 : this()를 이용하여 한 클래스 내의 특정생성자에서
오버로딩되어있는 다른 생성자를 호출 할 수 있다.

public class ThisConstr{

public ThisConstr(){
 this("");           
}                            //②default 생성자 호출후
                                 오버로딩된 또 다른 생성자호출.
                                  ""<-이것은 문자열을 의미하므로  
                                  String형 생성자를 호출한다.
 
public ThisConstr(String a){
 System.out.println("ThisConstr(String a)생성자 호출");
} // ③String형 생성자가 호출되어 Sysout된 내용을 출력.


public ThisConstr(int a){
 System.out.println("ThisConstr(int a)생성자 호출");

}

public static void main(String args [] ) {
 ThisConstr con = new ThisConstr();   //①ThisConstr클래스에 con이란
}            객체를 생성하면서 파라미터값이
}            없으므로 default 생성자를 호출함.
           

this();  ==>  자기자신 생성자를 호출함.
그러나 의미가 없다.
계속 자기자신만 호출하는것이므로.
this(""); ==> 이런식으로
다른 생성자를 호출하는거임.

----------------------------------------------------------------------


파라미터를 이용하여 실행시 arguments를 입력 받을수있다.
Run -> Run Configurations -> Arguments -> Program arguments 에 입력.
띄어쓰기를 기준으로 각 Index에 저장됨.

[Java 실행시 Arguments 입력하여 실행방법]
java (클래스명) (인수1) (인수2) (인수3)···

ex)
C:> javac Test.java
C:> java Test red color blue
  
----------------------------------------------------------------------
입력후 정렬 하는 습관!
Ctrl + Shift + f

작성후 저장하는 습관!
Ctrl + s

 


----------------------------------------------------------------------

 

default 생성자(default constructor)

default 생성자는 인자도 없고 내용도 없는 생성자인데,

객체가 생성 될 때 반드시 생성자가 호출되어야 하므로, 클래스에 생성자가

하나도 선언되어있지 않으면 컴파일러가 default 생성자를 자동을 생성한다.
 
하지만, 생성자가 하나라도 존재하는 클래스에는

자동으로 기본 생성자가 삽입되지 않는다.

 
---------------------------------------------------------------------


용어!

argument - 인수
unsign - 부호가없는
parse - 분석하다
radix - 진법
api = documentation

 

'JAVA > 팀장님 JAVA수업' 카테고리의 다른 글

팀장님수업6  (0) 2012.06.22
팀장님수업5  (0) 2012.06.14
팀장님 수업3  (0) 2012.05.24
팀장님 수업 1  (0) 2012.05.17
팀장님 수업 2  (0) 2012.05.17
posted by changhozz 2012. 5. 24. 23:18

Object 생성 및 생성자의 개념

(1) Class명 (변수명) = new 생성자명();

ex) Test aaa = new Test();

생성자란?

생성자는 인스턴스가 초기화될 때 호출되는 '인스턴스 초기화 메소드'이다

생성자의 특징은?

returnType이 정의되어 있지 않다.

생성자명은 클래스명과 같아야 한다.

프로그램 작성 순서

(1)요구사항 분석

고객과의 소통을 통하여 고객의 요구사항을 정확히 분석한다. (업무파악의 중요성!)

(2)클래스 설계

요구사항을 시나리오로 작성하여, 기능 단위로 분류한다. 기능단위로 분류후, 멤버변수,메소드를 각각 분리한다.(개발자의 관점으로!)

ex) 고객이 도서관에간다. 책을 대출하려고 바코드를 찍는다.

(3)클래스 내부 구현체 프로그래밍 작업

클래스 설계한 내역을 바탕으로 프로그램 작업을 실시한다.

(4)테스트

제작이 완료된 후 여러 가지 경우의 수로 테스트를 진행한다.

(5)유지보수

테스트시 오류사항에 대해 프로그램 수정작업을 실시한다.

 

이를 <소프트웨어 개발 방법론>이라한다.

 

 

'JAVA > 팀장님 JAVA수업' 카테고리의 다른 글

팀장님수업6  (0) 2012.06.22
팀장님수업5  (0) 2012.06.14
팀장님수업4  (0) 2012.05.31
팀장님 수업 1  (0) 2012.05.17
팀장님 수업 2  (0) 2012.05.17
posted by changhozz 2012. 5. 17. 21:48

프로그래밍에 대한 개념과 자바 특징에 대해서 배움.

프로그랭밍이란 - 개발자가 특정 메모리 공간을 활용하여
프로세스를 구동시키는 것을 프로그램이라 하며,
이를 개발하는 것을 프로그래밍이라 한다.

(Process - 컴퓨터 내에서 실행중인 프로그램을 일컫는 용어.)

자바의 특징중 '플랫폼이 독립적이다'란 의미-
일반 application은 해당 OS에 맞도록 맞붙어있어서
다른 OS에서 application을 실행할수없는 반면,
Java는 JVM(Java Virtual Machine)이
어느 OS에서든 실행할수있도록 해준다.

플랫폼(platform) - 응용프로그램이 실행될 수 있는 기초를 이루는 컴퓨터 시스템을 의미 (환경)
ex) OS, DB 등..

garbage clloection의 의미 - garbage collecter 가
자바 프로그램 상에서 필요없는 메모리를 제거해준다.


그밖에
RAM은 주기억장치로써 휘발성이다.(거쳐가는곳)
HDD은 보조기억장치로써 비휘발성이다.(영구저장)

'JAVA > 팀장님 JAVA수업' 카테고리의 다른 글

팀장님수업6  (0) 2012.06.22
팀장님수업5  (0) 2012.06.14
팀장님수업4  (0) 2012.05.31
팀장님 수업3  (0) 2012.05.24
팀장님 수업 2  (0) 2012.05.17
posted by changhozz 2012. 5. 17. 21:48

                                                    Study
자바 수업 후 복습.

자바 플랫폼
1)J2SE(Java 2 Standard Edition)
Java 언어를 이용하여 일반 어플리케이션을 개발하고,
실행할 수 있는 환경을 제공하는 플렛폼.

2)J2EE(Java 2 Enterprise Edition)
J2SE를 바탕으로 웹 서버, 네트워크 환경에서 사용.

3)J2ME(Java 2 Micro Edition)
핸드폰이나, 전자렌지 등 소형 장비에 이식되는 프로그램을 작성할 때 사용


IDE tool (Integrated Development Enviroment) - 통합개발환경
Java 개발을 하나의 프로그램에서 모두 할 수있도록 지원해 주는 프로그램.
ex) 이클립스.

자바API (Application Program Interface)
클래스 라이브러리의 집합으로 다큐멘테이션(Documentation)과 같은 역할을 함.

javac.exe - 자바 컴파일러. 자바소스코드를 바이트코드로 컴파일함
JDK(java development kit) -자바개발도구
                          자바용 소프트웨어 개발 툴.
JDK = JRE + 개발에 필요한 실행파일(ex- java.exe)

JRE (Java Runtime enviroment) 자바실행환경
자바로 작성된 응용프로그램이 실행되기위한 최소환경.
JRE = Java API + JVM

JVM(Java Virtual Machine) - 자바가상도구
자바를 실행하기 위한 가상 컴퓨터

 




클래스와 객체의 개념
클래스- 객체를 만드는 틀
객체 - 실체와 그 데이터에 관련되는 동작을 모두 포함한 개념.

클래스에는 멤버변수,생성자,메서드가있다.
멤버변수 - 클래스의 속성을 나타냄.
생성자 - 객체의 초기화를 담당.
메서드 - 클래스의 기능을 나타냄.                 

 

클래스사용의 좋은 예는?

클래스는 재사용이 가능하게 만드는것이  중요하다

독립적일수록 좋고, 이질성이 필요하다.

 

OOP - Object Oriented Programming  - 객체 지향 프로그래밍.

 

'JAVA > 팀장님 JAVA수업' 카테고리의 다른 글

팀장님수업6  (0) 2012.06.22
팀장님수업5  (0) 2012.06.14
팀장님수업4  (0) 2012.05.31
팀장님 수업3  (0) 2012.05.24
팀장님 수업 1  (0) 2012.05.17