[Syntax01]
package june01;
// 기본적으로 클래스가 외부에 존재해야 합니다.
// 클래스 : 자바의 객체단위
public class Syntax01 { // 클래스 시작
// 메소드 : 기능 실행 단위
public static void main(String[] args) { // 메소드 시작
// 여기는 클래스 범위이기도 하고 메소드 범위입니다.
// 메소드는 클래스 속에 있어야 합니다.
} // 메소드 끝
} // 클래스 끝
// 자동정력 ctrl + shft + f : 단, 에러가 없을 때만 동작
[Syntax02]
package june01;
public class Syntax02 {
public static void main(String[] args) {
// 명령어 : 메소드 속에 들어가 있어야 합니다.
String str = "메소드 속에서..."; // str 변수 선언
str = "변경합니다"; // 변수 변경
System.out.println(str); // 변수 출력
}
}
명령어는 세미콜론(;)으로 끝나야함
package june01;
public class Syntax02 {
public static void main(String[] args) {
// 명령어 : 메소드 속에 들어가 있어야 합니다.
// 선언, 대입, 초기화, 명령 -> ;(세미콜론)으로 끝나야함
int number = 10; // 변수 선언 = 초기화
number = 100; // 대입
System.out.println(number); // 변수 출력
}
}
클래스는 'class + (대문자)로시작'
메소드는 괄호앞이 이름 -> main(String[] arg) : 메인메소드
그아래 명령어 (들여쓰기로 구분)
package june01;
public class Syntax02 {
int num() {
return 1;
}
void add() {
}
static void sum() {
}
public static void print() {
System.out.println("프린트 메소드 입니다.");
}
public static void main(String[] args) {
int number = 10; number = 100;
System.out.println(number); // 변수 출력
print(); // 프린트 메소드 호출하기
}
}
100
프린트 메소드 입니다
Syntax02 클래스 안에 num, add, sum ..등등 여러개의 메소드 가능. (메소드 => 함수로 이해)
메소드들의 실행순서는 해당 클래스의 메인부터 시작
메인 메소드 실행이 끝나면 종료되고, 다른 메소드들은 실행되지 않음 (순서는 상관없음)
다른 메소드 실행하려면 별도로 호출필요 -> 메인메소드 내부에 print(); 로 호출
* static 없는 메소드들은 호출방법 다름 (나중에다시..)
package june01;
public class Syntax02 {
int num() {
return 1;
}
public static void main(String[] args) {
Syntax02 s2 = new Syntax02();
s2.num(); // non static 인스턴스명.num() 호출
}
}
[Syntax03]
package june01;
//main 메소드에 적어야 실행됩니다.
class Apple {
public static void main(String[] args) {
System.out.println("애플 클래스 속 메인 메소드");
}
}
public class Syntax03 {
public static void main(String[] args) {
System.out.println("출력문");
add(10, 20); // 메소드 호출
}
static void add(int num1, int num2) {
System.out.println(num1 + num2);
}
}
출력문
30
클래스 이름 대조 -> 해당 클래스(Syntax03)의 메인 메소드를 찾아 실행
Apple 메소드는 실행안됨.
Q&A
Q) 메소드에서 선언된 변수들은 다 매개변수 args에 저장되는 건가요?
A) main메소드의 경우가 그렇습니다. 나중에 나올 배열이라는 기능이 거기에 더 추가됩니다.
만약 adde(int num1)라고 한다면 num1에 저장됩니다.
Q) 그럼 메소드 안에서 선언된 변수들은 다 ()안에 있는 매개변수에 저장되는건가요?
A) 일부는 맞는 말입니다.
void age(String str){
String name="홍길동";
}
이라고도 할 수 있습니다.
파라미터는 프로그램 실행시 받는 값들이고, 메소드 속에서는 다른 이름으로 생성해서 사용하시면 됩니다.
Q) 아까 저희가 배운 int number에서 값을 변경하였었는데 그 때는 왜 int를 넣지 않는건가요?
A) 변수를 사용하기 위해서는 선언이라는 작업이 필용합니다.
선언시에는 앞에 데이터타입(int같은거)를 적어주고 '변수명 = 값' 으로 씁니다.
int 변수명 = 100;
활용할때는 데이터타입을 적지 않고 바로 변수를 적어줍니다.
변수명 = 1000;
'국비과정 > JAVA (기초)' 카테고리의 다른 글
20230602 _[2일차]_03. 데이터타입2 (0) | 2023.06.04 |
---|---|
20230602 _[2일차]_02. 데이터타입1 (0) | 2023.06.04 |
20230602 _[2일차]_01. 변수 (0) | 2023.06.04 |
20230601 _[1일차]_02. 자바설치 & 이클립스설치 (0) | 2023.06.04 |
20230601 _[1일차]_01. 자바기초 (0) | 2023.06.03 |