객체를 이루는 것은 데이터와 기능이다.
데이터는 변수로 표현
-> 객체안에 포함된 변수를 '멤버변수,' '전역변수', '프로퍼티', '필드'
기능은 메서드로 표현된다.
-객체의 설계도 역활을 하는 프로그램 소스
class 클래스이름{
멤버변수;
void 메서스이름(){
}
}
class라는 예약어와 클래스의 이름을 명시하고 {...} 블록을 구성
멤버변수는 여러개 존재할 수 있다. 이 때, 값을 선언과 동시에
할당할 수도 있고, 객체를 통해 간접적으로 할당할 수도 있다.
메서드는 여러 개 존재할 수 있다.
클래스 안에 포함된 멤버변수와 메서드를 특성에 따라 그룹화 하기
위한 기법이 클래스를 작성하는 것이라고 이해할 수 있다.
package Class; // 학생 정보를 포함하는 클래스 작성 class Student{ //멤버 변수 String name = "자바학생"; int age = 20; String number = "01012345678"; } public class Main01 { public static void main(String[] args) {
// 클래스 이름의 시작은 대문자
객체의 선언
클래스이름 객체이름;
ex) int num
객체의 할당
객체이름 = new 클래스이름();
클래스이름 객체이름 = new클래스이름();
public class Main01 { public static void main(String[] args) { // 객체의 선언과 할당 분리 Student std; std = new Student(); // 객체의 생성과 할당 일괄지정 Student std2 = new Student();
클래스란 객체를 위한 틀을 제공하는 것이기 때문에 클래스
작성과정에서 멤버변수에 대입된 값은, 객체를 통하여 멤버변수의 값을
지정하기 전까지 사용될 "기본값"으로서의 의미이다.
객체를 통하여 새로운값이 대입되면 클래스 작성시에 멤버변수에
대입한 값은 의미를 잃어버리게 된다.
때문에 일반적으로 클래스 작성시에는 멤법변수에 값을 지정하지 않는다.
메서드란 프로그램에서 하나의 동작 단위를 의미한다.
두개 이상의 메서드가 서로 동일한 대상을 위해서 존재할 경우,
이 메서드들을 클래스에 포함시켜 그룹화 할 수 있다.
클래스에 멤버변수와 메서드가 공존할 경우,
멤버변수는 모든 메서드가 공유하는 전역 변수로 존재하게 된다.
변수의 종류
- > 멤버변수(=전역변수)
: 클래스 안에서 선언된 변수로써, 클래스 블록범위 안에서 유효하다.
- > 지역변수
: 메서드 안에서 선언된 변수로써, 메서드의 블록을 빠져나가지 못한다.
그러므로 다른 메서드는 해당 변수를 인식하지 못한다.
이 규칙은 조건문, 반복문 같은 블록{}을 형성하는 모든
경우에 해당된다.
null : 아무것도 아닌 값