CSS 강좌 / 박스 모델(Box Model)

 

HTML 요소는 박스(box)로 이루어져 있습니다. 박스 위에 박스를 얹거나 박스들을 배열하여 문서를 만들어 나갑니다.

예를 들어 다음과 같이 코드를 작성했다면
<body>
  <header>
    <h1>Lorem</h1>
  </header>
</body>

body 박스 위에 header 박스가 있고, header 박스 위에 h1 박스가 있는 것입니다.

박스의 구성

하나의 박스는 바깥 여백 영역, 테두리 영역, 안쪽 여백 영역, 내용 영역으로 구성됩니다. 다음은 각 영역을 살펴보기 위한 간단한 예제입니다.
<!doctype html>
<html lang="ko">
  <head>
    <meta charset="utf-8">
    <title>CSS</title>
    <style>
      h1 {
        margin: 30px;
        border: 30px solid #dddddd;
        padding: 30px;
      }
    </style>
  </head>
  <body>
    <h1>Box Model</h1>
  </body>
</html>

웹브라우저로 보면 아래와 같은 결과 값이 나옵니다.

 

 

 

각 영역의 구분이 명확하지 않으므로 IE의 요소 검사로 보도록 하겠습니다.

 

색이 있는 모든 영역이 h1 요소입니다. 각 색이 나타내는 영역은 다음과 같습니다.
•① : 바깥 여백 영역(Margin Area)
•② : 테두리 영역(Border Area)
•③ : 안쪽 여백 영역(Padding Area)
•④ : 내용 영역(Content Area)

각 영역을 꾸밀 때 사용하는 속성은 다음과 같습니다.
•바깥 여백 : margin 속성
•테두리 : border 속성
•안쪽 여백 : padding 속성
•박스의 가로 크기 : width 속성
•박스의 세로 크기 : height 속성
•박스의 크기 기준 : box-sizing 속성
•박스의 배경 : background 속성

               

블로그 이미지

itworldkorea

IT korea가 세상(world)을 변화시킨다.

,

9일차 수업 ( 예외처리 )

1. 예외 처리 

 일반적으로 프로그램 실행 중에 발생되는 의도하지 않은 문제를 의마하며 예외가 발생하면

프로그램은 비정상 종료된다. 이러한 현상을 방지하고 정상 종료되게 처리하는것을

예외처리 ( Exception Handling ) 이라고 한다.

 

<예외 처리 방법은 2가지>


a. try ~ catch
==> 예외가 발생된 곳에서 처리하는 방법.

 

try{

//예외발생코드

}catch(예외 클래스명 변수명){

}

위처럼 사용!

 

b. throws
==> 예외가 발생된 곳에서 하지 않고 호출한 곳으로 떠 넘기는 방법으로 main 메소드까지 떠 넘긴다.

굳이 throw 문을 사용 하는 이유는 아래와 같다.

 

 * 예외가 발생된 곳에서 그냥 try ~ catch 하면 네트워크 같은 상황에서는 사용자가 어떤 이유 때문에 원하는 결과가 안나왔는지 모른다. 따라서 throws 해서 사용자가 어디서 무슨 에러가 나왔는지 확인 할 수 있게 해야 한다.

 

====수업 내용======

 

1. 예외처리

가. 예외클래스 계층구조 파악

Object

Throwable

Exception

RuntimeException  IOException

하위클래스  하위클래스

==> API들은 어플리케이션에서 발생되는 모든 예외를 처리 가능하지 못하다. 범용적인 예외들만 처리가능하다.
detail한 예외처리는 사용자가 만들어서 처리해야 된다.
(사용자 정의 예외클래스)

* 사용자 정의 예외클래스
a. extends Exception
b. 문자열 하나 갖는 생성자.
   ==> 문자열은 예외 정보 저장시 사용된다.
c. 필요하면 여러 구성요소 추가 가능하다.
   ==> 사용자가 지정한 특정한 조건에 위배되었을 때.
   ( 문법적으로 문제 없다 )
   ex) 잔액부족
 검색을 했는데 데이터가 없는 경우,
 나이를 저장하는데 30이상,
 이메일 입력시 @를 입력 안하는 경우,

나. 예외처리 방법
==> 예외클래스 사용한다.
a. try ~ catch 문
==> 예외가 발생된 곳에서 처리하는 방법.

b. throws 문
==> 예외가 발생된 곳에서 하지 않고 호출한 곳으로 떠 넘기는 방법.
main 메소드까지 떠 넘긴다.
==> 주로 사용하는 이유
 : 예외가 발생된 곳에서 그냥 try ~ catch 하면 네트워크 같은 상황에서는 사용.
네트워크 같은 상황에서는 사용자가 어떤 이유 때문에 원하는 결과가 안나왔는지 모른다.
따라서 throws 해서 사용자가 예외 정보를 보게 해야 된다.

<주요 용도 2가지>

a. 사용자가 지정한 예외 조건.
- 사용자정의 예외 클래스가 필요
- 예외조건에 위배되면 예외를 발생시켜야 된다.
  throw new 사용자 정의 예외클래스(문자열);
- throws 하는 방법으로 예외처리한다.

b. 범용적인 예외 발생시 --> 사용자 정의 예외로 변경할 때

==> 0으로 나누었을 때 ArithmeticException 발생되고, 예외처리하고 예외정보 출력하면 /byZero 출력된다.
==>“0으로 나누어 예외 발생된”한국어로 된 예외로 다시 출력해야 된다.


ex)

0으로 나눔 ----> ArithmeticException 발생 ---> /byzero

==> 변경
0으로 나눔 --> ArithmeticException 발생 --> 예외처리(try-catch)--> 사용자 정의 예외클래스 발생.
 --> 사용자 정의 예외클래스 처리 --> “0으로 나누워 발생"

다. 예외 클래스의 종류 2가지

a. compile checked Exception
==> 컴파일시 예외처리 유무를 체크
 ( 만약에 예외처리가 안되어 있으면 컴파일 에러 발생)
==> IOException , SQLException 계열
특징 :
IO작업, SQL 작업과 관련된 메소드를 사용하는 경우에 반드시 예외 처리를 해야된다.
이유?  worker메소드에서 throws XXXException 한다.
따라서 caller 메소드에서는 try~catch해야된다.
안하면 에러 발생된다.


b. compile unchecked Exception
==> 컴파일시 예외 처리 유무를 체크안함
==> RuntimeException 계열
==> 실행할 때 발생되는 예외들이다.
==> 특징 : 예외처리할 필요가 없다.
    예외가 발생되지 않게 코드로 구현이 가능하기 때문이다.
개발자가 제대로 조건 체크했으면 에외발생 안되는 사항이다.
==> 따라서 예외 처리 할 생각 말고 조건 체크 잘해라!

2. 다중 데이터 처리

==> 대량의 데이터를 저장할 수 있는 방법

* 데이터 저장 방법
가. 변수

나. 배열
생성하면서 크기 지정해야 된다. (초기 사이즈)
따라서 데이터를 나중에 추가가 불가능하다. / 배열을 다시 생성해야 된다.

- 같은 데이터만 저장 가능하다. (다형성 제외 )
- 기본형 배열 사용 가능하다.
- 참조형 배열 사용 가능하다.
- 배열크기 : 배열명.length

다. 컬렉션 ( Collection )
- 생성만 하면 된다. 크기는 자동 증가/감소 된다.
- 서로 다른 데이터 모두 저장 가능하다.
- 저장 데이터는 참조데이터(클래스)만 가능하다.
- 기본형 저장 안되는 것이 아니고 Wrapper 클래스 사용하여 저장한다.

=> 결국 모든 데이터 저장 가능하다.
 - java.util 패키지에 존재하는 몇 개의 클래스 파일.
-컬렉션 크기 : 변수명.size()

* 크기(길이) ?

가. 문자열 길이
 str.length();
나. 배열 길이
 배열명.length
다. 컬렉션 길이
 변수명.size()
라. 파일크기


- 컬렉션의 계층구조

 Object

 << Collection >> - 인터페이스
  
<<Set>>    <<List>>
Hashset     ArrayList(****), Vector

: 데이터 중복안됨   : 데이터 중복 허용
: 데이터 순서없음   : 데이터 순서있음


* 제네릭( generic )
==> <>
==> <클래스형>을 지정해서 사용하는 방법

ex)
//일반적
ArrayList = list = new ArrayList();
==> 얻어 올 때 반드시 형변환 해야 된다.
==> 잘못된 데이터가 저장 될 수 있다.
 (실행시 파악할 수 있다. )

// Generic
ArrayList<저장할 클래스명> list = new ArrayList<>(); //JAVA 7부
==> 얻어 올 때 형변환 할 필요가 없다.
==> 잘못된 데이터를 컴파일 시점에 알 수 있다.

 

 

블로그 이미지

itworldkorea

IT korea가 세상(world)을 변화시킨다.

,

6일차 수업 (다형성)

1. 다형성( polymorphism )

정의 : 하나의 변수가 서로 다른 데이터를 저장할 수 있는 능력.

 

이런식으로 사용 ->  데이터형 변수명;

 

2. 다형성의 적용 형태

가. 배열
-> 배열은 같은 데이터만 저장가능하다.
-> 다형성을 적용하면 데이터가 달라도 된다.
만약, object 배열을 생성하면 모든 데이터를 저장 가능하다.

나. 메소드 인자

1) Employee : taxEmployee(){10%}
   Manager: taxManager(){20%}
   Engineer: taxEngineer(){15%}

2) 오버라이딩
   Employee : taxEmployee(){10%}
   Manager: taxEmployee(){20%}
   Engineer: taxEmployee(){15%}

3) 부모 클래스에 모두 구현하고 자식은 그냥 사용.  

 

3. 다형성의 메소드 호출

Shape s = new Rectangle(10,10); //다형성
s.getArea(); // 동적 바인딩 발생

* 동적 바인딩 발생
==> 메소드에서 발생
==> 다형성으로 생성시 발생
==> 정의 : 컴파일시에는 변수의 원래 타입의 메소드를 인식하고 실행시에는 실제로
    new 한 타입의 메소드를 인식하는 것.

 

4. 원래 타입 식별

 : instanceof 연산자 사용
 : 변수명 instanceof 클래스명
-> 주의할점은 반드시 계층구조가 낮은 것부터 비교한다.

 

<다형성 최종 정리>

1) 상속
2) 다형성을 적용하면 여러 데이터를 저장 가능하다.
따라서 식별방법이 필요하다.
3) instanceof 로 식별
4) 원래 데이터형으로 형변환하고 작업한다.

 

6. Object 클래스

7.toString() 메소드

 

<배운것>

Eclipse 에서 Argument 에서 문자열or숫자를 입력 받는다.

public static void main(String[] args) {

 

String a = args[*]; //그냥 문자열을 받아와 a에 저장 배열처럼 이용

double salay = Double.parseDouble(args[0]); //double 형으로 받아와 salay에 저장

 

}

에서 Argument 에서 args를 말하는 것!

먼저 .java 클릭후에 마우스 오른쪽 버튼을 누르고 run as -> run cofi....클릭

Argument 의 String prompt 클릭하고 적용

 

수업노트 ==========

1. 다형성( polymorphism : 폴리몰피즘 )

정의 : 변수는 데이터형을 갖는다. 따라서 저장할 데이터의 데이터를 알고 있다.

예> 데이터형 변수명;

    하나의 변수가 서로 다른 데이터를 저장할 수 있는 능력.

- 기본형 형태
예>
 short s = 10;
 int i = 20;  // i에 20 정수값 저장
     i = s;   // idp short타입 데이터 저장

 큰 타입 = 작은 타입;
 큰 타입과 작은 타입이 같은 종이라서 가능하다.
 작은 타입 = 큰 타입; //에러 발생
 -> 작은 타입 = (작은타입) 큰 타입;
- 참조형 형태

예> Employee e = new Manager();   // 다형성
      e = new Engineer();  // 다형성
      e + new Employee();  // 일반적 방법

    Employee e = new Manager();
    큰 타입 = 작은 타입;
    큰 타입과 작은 타입이 같은 종(상속 관계) 이다.

용도 : 하나의 변수로 재사용하자.

2. 다형성의 적용 형태

가. 배열
-> 배열은 같은 데이터만 저장가능하다.
-> 다형성을 적용하면 데이터가 달라도 된다.
만약, object 배열을 생성하면 모든 데이터를 저장 가능하다.

Object[] obj = new object[10];
obj[0] = "홍길동";
obj[1] = new Employee();
obj[2] = 12;

나. 메소드 인자
예>      Employee
Manager      Engineer
=> 세금 구하기
   일반 직원 : 10%
   관리자 : 20%
   엔지니어 15%

1) Employee : taxEmployee(){10%}
   Manager: taxManager(){20%}
   Engineer: taxEngineer(){15%}

2) 오버라이딩
   Employee : taxEmployee(){10%}
   Manager: taxEmployee(){20%}
   Engineer: taxEmployee(){15%}

3) 부모 클래스에 모두 구현하고 자식은 그냥 사용.

예> public void xxx( long i ) { }
 int x =10;
 xxx(x);
 short s = 20;
 xxx(s);


   Employee : taxEmployee(){ //Object 사용 가능
  10%
  20%
  15%
  }
   Manager :
  taxEmployee( new Manager());
   Engineer :
  taxEngineer( new Engineer());

3. 다형성의 메소드 호출

Shape s = new Rectangle(10,10); //다형성
s.getArea(); // 동적 바인딩 발생

* 동적 바인딩 발생
==> 메소드에서 발생
==> 다형성으로 생성시 발생
==> 정의 : 컴파일시에는 변수의 원래 타입의 메소드를 인식하고 실행시에는 실제로
    new 한 타입의 메소드를 인식하는 것.

4. 원래 타입 식별?

 : instanceof 연산자 사용
 : 변수명 instanceof 클래스명
-> 주의할점은 반드시 계층구조가 낮은 것부터 비교한다.

예>

5. 메소드의 인자로 데이터를 넘기는 방법

=> 자바는 call by value
가. 기본형을 인자로 넘기면 값이 복사된다. 따라서 받는 곳에서 데이터를 변경해도 원래 데이터는
    변경되 지 않는다.

나. 참조형을 인자로 넘기면 주소값이 넘어가고 따라서 동일한 주소를 가리키게 된다. 주소를
    받은 곳에서 데이터를 변경하면 원래 데이터도 변경된다.

=> call by value reference

다형성?
1) 상속
2) 다형성ㅇ을 적용하면 여러 데이터를 저장 가능하다.
따라서 식별방법이 필요하다.
3) instanceof 로 식별
4) 원래 데이터형으로 형변환하고 작업한다.


6. Object 클래스
- 최상위 클래스이다.
모든 클래스의 부모 클래스이다.
(java.lang.Object 의 모든 구성요소를 모든 클래스가 사용가능하다. )

- 대표적으로 2가지 메소드 사용법을 알자
가. toString() 메소드

나. equals() 메소드

7.toString() 메소드
=> 문자열로 변경하는 메소드.
=> 자동호출된다.
( 참조변수를 Print 메소드로 출력할때 자동으로 호출된다.)
예> String name = "xxx";
    System.out.println

=> 참조변수에는 위치값이 저장되어 있는데, console창에 출력되기 위해서는 문자열이 변경되어야 한다.
따라서 자동으로 toStirng() 붙는다.

=> Object의 toString() 메소드 구현은 다음과 같다.

  클래스명@16진수

예>  Object

Stirng    Date , Integer,
=> 대부분 API가 모두 오버라이딩되어 있다.
@ 대신에 실제갑 출력하게 구현되어 있다.

Person
=> 개발자가 명시적으로 만든 클래스이다.
따라서 @가 나온다.
=> 우리도 오버라이딩 하자

8. equals 메소드

-> Object 의 equals 메소드 구현은 다음과 같다.
  " ==  " 연산자로 비교되어 있다.
  ( 위치값 비교가 된다.)

예> Object : == 비교

String
 -> 대부분의 API가 모두 오버라이딩되어 있다. 
(실제값 비교하게 구현 되어 있다.)

Person
API 실제
* 동등비교

가. == 연산자
- 기본형
예> int n =3;
    int n2 = 3;
    if(n==n2) ==> 실제값 비교

- 참조형
예> Person p = new Person("박보영");
    Person p2 = new Person("박보영");
    if( p==p2) ==> 위치값 비교, false
따라서 참조형 동등비교는 == 비교하지 말고 equals 메소드로 사용한다.
(정말로 위치값을 비교하는 경우에만 == 사용한다. )

나. equals 메소드
- 참조형
- 실제값의 동등비교시 사용
예>
 String name = "박보영";
 String name2 = "박보영";
 System.out.println(name.equals(name2)); //true

 Person p = new Person("곽보근");
 Person p2 = new Person("곽보근");

 System.out.println(p.equals(p2));

블로그 이미지

itworldkorea

IT korea가 세상(world)을 변화시킨다.

,

4일차 수업

 

1. this 키워드 : 메모리에 올라간 자기 자신을 가리킬때 사용

가. 인스턴스변수와 로컬변수와 동일하기 때문에 구별하기 위해 사용
    this.XXX 인스턴스 변수를 가리킨다.

예> String name;  // 인스턴스 변수
    public void setName(String name){  // 로컬변수
     this.name = name;
    }
나. 오버로딩 생성자를 호출할때 사용. (생성자 끼리 서로 호출) 

 

2. 패키지 ( package )
- 클래스 파일들을 관리할 목적으로 묶는방법.
- 관련된 클래스들끼리 동일한 패키지명으로 지정한다. ( 윈도우 폴더와 비슷 ) 

3. import 문

- 패키지가 다른 클래스를 사용하기 위한 방법.

- 여러개의 import 문을 사용 할 수있다.

 

예> import 패키지명.패키지명2.클래스명;

 

4. 가변 인자 (Varargs)

- 일반적인 메소드 호출시 사용
- 메소드명과 argument list가 일치해야 된다.

 

 

5. 배열 (array)

* 데이터 저장 방법
가. 변수
==> 데이터 10개이면 변수 10개 필요.
    10개의 변수명을 모두 알아야 사용 가능하다.
    서로 다른 변수명을 모두 알아야 되기 때문에 관리가 어렵다.
나. 배열
==> 다수의 데이터를 하나의 이름으로 관리 가능하다.
 (배열명)
==> 특징 : 같은 데이터만 저장 가능하다.
      인덱스(첨자)로 접근 한다. ( 0부터 시작)
      배열의 크기는 배열명.length 로 알 수 있다.
      배열은 참조형이다.
      (배열명에는 위치값이 저장된다.)
      배열은 참조형이기 때문에 new 이용해서 생성한다.
 기본형도 참조형도 모두 배열로 관리가 가능하다.

 

2차원 배열일 경우

배열명 = new 데이터형[행크기][열크기]; // 열크기 생략가능

 

===학습세부사항 ===

1. this 키워드
정의 : 메모리에 올라간 자기 자신을 가리킬때.

<용도 2가지>
가. 인스턴스변수와 로컬변수와 동일하기 때문에 구별하기 위해 사용
    this.XXX 인스턴스 변수를 가리킨다.

예> String name;  // 인스턴스 변수
    public void setName(String name){  // 로컬변수
     this.name = name;
    }
나. 오버로딩 생성자를 호출할때 사용. (생성자 끼리 서로 호출)

다른 클래스에서 생성자 호출방법?
=> new 클래스명();

같은 클래스에서 오버로딩 생성자 호출방법?
this();
this(12):
용도는 중복제거 및 데이터 초기화 효율
반드시 생성자에서 사용하고, 첫 라인에서 사용해야 된다.
예>
public Student(){}
public Student(int s){
 
 this(s,null);
}
public Student(int s, String n){
 this(s,n,null);
}

2. 패키지 ( package )
용도 : 클래스 파일들을 관리할 목적으로 묶는방법.
관련된 클래스들끼리 동일한 패키지명으로 지정한다. ( 윈도우 폴더와 비슷 )

방법 :  package 패키지명;
 package 패키지명.패키지명2;
특징 : 패키지명은 유일한 도메인을 사용한다.
예> com.xxx
java 로 시작하는 패키지는 사용불가.
하나의 클래스에 한번만 지정 가능.

package com.stu;

public class Student {}

패키치가 서로 다르면 접근이 불가능하다.
import 를 사용하면 접근이 가능하다.
* 모든 API는 패키지로 제공된다.
java.
javax.
org.
따라서 API의 클래스를 사용하기 위해서는

3. import 문

용도: 패키지가 다른 클래스를 사용하기 위한 방법.

문법 : import 패키지명.패키지명2.클래스명;

특징 :
 여러번 사용 가능하다.
package com.xxx;
improt comstu.Student;
import java.util.ArrayList;
public class

4. 가변 인자 (Varargs)

용도 : 일반적인 메소드 호출시
메소드명과 argument list가 일치해야 된다.

문법:
 가. 일반 메소드
 public void set(int n){}
 변수명.set(10);

 나. 가변인자 메소드
 public void set(int ... n){} //인수의 개수가 상관없다, 배열로 관리한다.
 변수명.set(10);
 변수명.set(10,20);
 변수명.set(10,20,30);
 
5. 클래스 다이어그램

가. 클래스만 표현

student


나. 클래스 구성요소 모두 표현
* 접근지정자 4가지
public(+)
protected (#)
(default, friendly)
private (-)

 

클래스명
 변수 ==> 접근지정자 String name;
 변수명: 데이터형
 +name:String
-----------------

생성자 ==> public Student(){}
     public Student(int s, String n){}
 + 생성자명()
 + 생성자명( 변수명 : 데이터형, 변수명 : 데이터형)

메소드 ==> public void setName(String n){}
 public String getName(){}

 +메소드명(변수명:데이터형): 리턴타입
 +getName():String
 +setName(n:String)

6. 배열 (array)

* 데이터 저장 방법
가. 변수
==> 데이터 10개이면 변수 10개 필요.
    10개의 변수명을 모두 알아야 사용 가능하다.
    서로 다른 변수명을 모두 알아야 되기 때문에 관리가 어렵다.
나. 배열
==> 다수의 데이터를 하나의 이름으로 관리 가능하다.
 (배열명)
==> 특징 : 같은 데이터만 저장 가능하다.
      인덱스(첨자)로 접근 한다. ( 0부터 시작)
      배열의 크기는 배열명.length 로 알 수 있다.
      배열은 참조형이다.
      (배열명에는 위치값이 저장된다.)
      배열은 참조형이기 때문에 new 이용해서 생성한다.
 기본형도 참조형도 모두 배열로 관리가 가능하다.

다. 컬렉션(*)

* 배열 사용 방법
가. 배열 선언
데이터형 [] 배열명; 데이터형 배열명 []; ([] 대괄호 , 브래킷)
int [] num;  String [] name;

나 배열 생성
배열명 = new 데이텨형[크기];
==> 자동으로 기본값으로 설정된다.
num = new int[4];   name = new String[3];

다. 초기화
==> 인덱스로 접근

배열명[첨자] = 값;

num[0] =1;   name[0] =  "홍길동"
num[1] = 2;   name[1] =  "이순신"
num[2] = 3;   name[2] =  "유관순"
num[3] = 4;   name[3] =  "강감찬" //에러

7. 배열 생성 방법 3가지

가. new 이용
int [] num = new int[3];
num[0] = 1;
num[1] = 2;
num[2] = 3;

나. 리터럴 이용
===> 데이터형 [] 배열명 = {값1, 값2, 값3};

int [] num = {1, 2, 3};

String [] name = {"홍길동", “이순신”, “강감찬”};

Student [] stu = {
------------------------------------------------------------------

8. 이차원 배열

가. 배열선언
 데이터형 [][] 배열명;

int [][] num;  String[][] name;

나. 배열 생성

배열명 = new 데이터형[행크기][열크기]; // 열크기 생략가능

num = new int[3][2];  name = new String[2][2];

다. 초기화

num[0][0] = 1;
num[0][1] = 2;
num[1][0] = 3;
num[1][1] = 4;
num[2][0] = 5;
num[2][1] = 6;

======================================> 정방향 배열

* 비정방향 배열 ==> 열의 크기가 다르다.

가. 배열 선언

int [][]num;

나. 배열 생성 (행 크기 지정)

num = new int[3][]; //3행만 생성

다. 열 생성

num[0] = new int[3]; //1행의 3열
num[1] = new int[2]; //2행의 2열
num[2] = new int[1]; //3행의 1열

라. 초기화

num[0][0] = 1;
num[0][1] = 2;
num[0][2] = 3;
num[1][0] = 4;
num[1][1] = 5;
num[2][0] = 6;

-------------------------------------------------------------
9. 이차원 배열 생성방법 2가지

가. new

나. 리터럴

==> 데이터형 [][] 배열명 ={{값, 값, 값},{값 },{값, 값}};

int [][] num = { {1,2,3}, {4,5},{6} };

String[][] name = { {"홍길동"},{“강감찬”},{“유관순”}};

Student [][] stu = {
 {new Student(1111, "홍길동", 20) },

 {new Student(1111, "홍길동", 20),
  new Student(1111, "홍길동", 20)},

 {new Student(1111, "홍길동", 20),
  new Student(1111, "홍길동", 20),
 new Student(1111, "홍길동", 20)}
}

10. command line 파라미터

==> public static void main(String [] args) {}
==> 실행시 파라미터를 설정하면 자동으로 main메소드의 args배열로 저장이 된다.

ex) public class Test{
public static void main(String [] args) {


}//end main
}//end class

실행 :
 Java Test 값, 값2, 값3

 

 

 

 

 

블로그 이미지

itworldkorea

IT korea가 세상(world)을 변화시킨다.

,