eterno

JAVA공부 6. main(), public, 출력함수 본문

JAVA/강의노트

JAVA공부 6. main(), public, 출력함수

영원한별똥별 2022. 8. 11. 10:00
728x90
반응형

오늘 배울 내용

- OPP : 자바를 Object Oriemted Programming 객체지향언어이다.

객체는 현실세계에 있는 걸 컴퓨터로 옮길때의 대상(소프트웨어 공학 용어)

- 패키지

- public

- main()

- 출력함수(print, println, printf)

- 라인피드와 캐리지리턴


 

* [ ] 는 배열 연산자로 있어도 되고 없어도 된다는 뜻

 

프로그램(program)

: 현실세계에서 일어나는 무형/유형의 현상/사건(event)을 컴퓨터를 통해서 볼 수 있게 옮겨 놓는 것

 

객체(object)

: 구현체를 실행하기위해 필요한 도구

- 자바가 실행할때 클래스에 메모리를 올려 CPU에 명령을 하는데 이때 사용되는 메모리의 대상

- 객체는 재 사용이 가능함(reusable)

- cpu가 통신할때 메모리에 올라가는 대상

    => 프로그램을 자바를 통해 표현하는 걸 구현체(객체)를 실현한다라고 함

 

EX) 우리가 회사에 문서를 제출한다고 하면 문서가 객체가 되는 것이고

     문서를 제출하는 일을 프로그램이라고 한다.

 

JAVA는 객체지향 프로그램(Object Oriented Programming)이다.

 - 자바에서 쓰는 모드 도구는 모두 object로 쓰임

 

ex) 과일

과일 사과 = new 사과();

과일 바나나 = new 바나나();

과일 딸기 = new 딸기();

 


패키지(package)

- 자바에서 디렉토리를 만드는 키워드
- package a.b.c.ch1 : a.b.c.ch1 패키지를 만드세요 라는 뜻
- package는 컴파일 할 때 만들어진다. (javac -d . Hello.java)
- 패키지를 일반 컴파일로 검사하면 패키지가 안만들어진다. (javac Hello.java)
- package 키워드는 자바 소스코드를 작성할 때 맨위(상단)에 작성한다.
- 패키지는 소문자로 써야하고 도메인 역순으로 써야한다.

- 패키지는 문장이기 때문에 종결연산자 ; 로 닫아줘야한다.

- 패키지는 같은 성격의 클래스를 묶을 수 있다.

패키지가 다른 클래스를 불러올때 자바에서 접근제한을 하기때문에 public 를 써서 연결할 수 있게 만들어줘야한다.

-> Class Package2 에 Class PublicTest를 불러오려면 클래스 앞에 public를 꼭 붙여야한다.


public

: 클래스 접근(호출, 부르는) 을 제한하는 접근제한자

           => main 함수를 다른 패캐지에서 호출 할 수 있다.

- class 키워드 : 자바에서 최소단위의 묶음을 class단위로 한다.
- class 키워드만 사용하면 일반 클래스라고 한다.
- 클래스 종류 : final class, abstract class, interface 등등

  빌트인 클래스 : system, string, long... 등

  사용자정의클래스 : 사용자가 정의하는 클래스명 ex) class Hello

 

core Java : 자바에서 가장 기본적인 데이터를 다루는 것(숫자, 문자)

java.lang.* 안에 있는 것들 

 


- 클래스는 클래스 키워드 다음에 식별자를 선언하고 시작 중괄호({)를 선언하고 닫는중괄호(})를 선언한다.
- { , } 사이를 클래스의 블럭, 영역, scope 라고 하고

 블럭 사이에는 함수, 변수, 클래스 etc 모든 오브젝트를 선언할 수 있다.
- 자바를 블럭언어, 영역언어, scope 언어 등으로 부른다.
- 클래스 블럭안에 선언 및 사용(호출)하는 객체들은 우리는 자원이라고 부른다.


main()

- main() 함수 : 정식명칭
- main() 함수는 레퍼런스(API)에 있는 함수가 아니다.
- main() 함수는  약속된 함수로, 하는 역할을 콘솔 어플리케이션( C/S 프로그램, Client & Server ) 프로그램의 시작점이다.

  (mian 이 윗줄에 있던 밑에줄에 있던 항상 main먼저 실행된다.)

- public static void main(String[] args) 항상 똑같이 사용해야 하며

  이 문장에서 바꿀 수 있는 것은 아규먼트 변수이름인 args 이다.
- [ ] :대괄호는 배열연산자라고 하며 자료형 또는 변수 둘 중 어느 곳에 선언해도 무방하다.
- String[] args[] : 아규먼트라고 부르고 스트링 배열이다.

- static , new : 두 키워드는 자원(static , new뒤에 선언된 함수)을 메모리에 올리게 하는 역할을 한다.
  (= 변수 또는 함수 및 객체에 static , new 가 앞에 선언되어 있으면 JUM이 해당하는 변수 또는 함수 및 객체를 메모리에 올려준다.)
- void : 키워드이고 리턴형이 없는 함수이다.

- 함수뒤에 오는 ( )는 매개변수(parameter) 또는 아규먼트(argument)를 선언할 수 있다.

- 매개변수(parameter) : 함수를 만들 때 ( ) 소괄호에 선언하는 변수

- 아규먼트(argument) : 함수를 호출 할 때 소괄호에 선언하는 변수 또는 값

- 자바에서 함수 블럭을 실행할 때는 인터프리터(interpriter) 방식으로 실행한다.

 

인터프리터 방식이란?

 : 왼쪽에서 오른쪽으로 읽는 방식(문장종결연산자가 나올때까지) => line by 형식

   (클래스는 인터프리터 방식 아님!!)


예제1)

*  참조변수 pt 에 a.b.c.Test.PublicTest를 호출한다.

결과>

 

예제2)

결과> 오류나는 이유 : class 앞에 public 를 안쓰면 오류가 난다.

 

예제3)

 

결과> 오류나는 이유 : int  앞에 public 를 쓰지 않아도 오류가 난다.

 

 

예제4)

정상적으로 입력했을때

함수뒤에 종결연산자 ; 를 입력했을 때

public 를 입력하지 않았을 때

static를 입력하지 않았을 때

 

아규먼트를 선언한 함수


출력함수

 - print : 줄바꿈 없이 한줄로 출력

- println : 출력후 줄바꿈

- printf : 출력서식에 맞게 출력

  %n : 줄바꿈 / %d : 정수형출력 / %f : 실수형출력 / %s : 문자열출력 / %c : 문자 출력 / %b : boolean 출력

 

라인피드와 캐리지 리턴

\n   : LF(Line Feed) : 캐럿(커서 cursor)을 다음 줄(현재 위치에서 바로 아래)로 이동
\r    : CR(Carriage Return) : 캐럿(커서 cursor)을 줄의 맨 앞으로 이동 시킨다.
\r\n : CR+LF 


문자상수

\t : 탭키

\' : 작은따옴표

\" : 큰따옴표

728x90
반응형