new
: 객체를 생성할 떄 사용하는 키워드class Animal {
String name; // 객체변수 생성
public void setName(String name) { // 객체의 이름을 설정하는 메소드 생성
this.name = name; // this는 Animal 클래스에 의해 생성된 객체(dog)를 지칭
}
}
public class Sample {
public static void main(String[] args) {
Animal dog = new Animal(); // 객체 생성
dog.setName("뭉치");
System.out.println(dog.name);
}
}
클래스 내의 함수
중복되는 코드를 줄이고, 가독성을 높일 수 있음.
메서드와 함수가 공존하는 파이썬과는 달리 자바에서는 메소드와 함수를 구분하지 않음
public static void method_name(int a, String params) {
// 접근 반환 메서드 매개변수 목록
// 제어자 타입 이름
// 구현부
}
void
: 반환값 없음int
: int 데이터 타입을 반환char
: char 데이터 타입을 반환String
: String 데이터 타입을 반환boolean
: boolean 데이터 타입을 반환지역 변수(Local variable) : 메서드 내에서만 쓰이는 변수
public class Sample {
int sum(int a, int b) {
return a+b; // a,b는 로컬 변수
}
}
public class Sample {
int sum(int a, int b) { // a,b는 매개변수(parameter)
return a+b;
}
public static void main(String[] args) {
// 메소드 호출
Sample sample1 = new Sample();
int c = sample.sum(1,2); // 1,2 는 인수(argument)
System.out.println(c); // 3
}
}
java
를 실행 시 가장 먼저 호출되는 부분main()
메소드를 찾아 그 안의 모든 명령문을 차례대로 실행main()
메소드를 가지는 클래스가 반드시 하나는 존재해야 함.main()
메소드가 없다면 실행되지 않음public class ClassName {
public static void main(String[] args) {
// 기본 형태
}
}
static
static
키워드를 사용하지 않는 경우, 인스턴스 메소드 또는 인스턴스 변수를 생성하는 것String[] args
args[0]
과 같이 인덱스를 통해 접근 가능class Sample {
public void SampleMethod(int parameter) { // 매개변수(Parameter)
...
}
int argument = 10
SampleMethod(argument) // 인수(Argument)
}