[Java] Java에서 변수, Class, Method 사용하기

eunhye_·2022년 7월 25일
0

Java

목록 보기
2/10
post-thumbnail

Java에서 기본적인 변수, class, method의 사용법을 간략히 설명합니다.

Java의 변수

Java에서 변수란 데이터를 저장 할 수 있는 메모리 공간이다.

  • 변수 선언
    타입 변수명;
    타입 변수명 = 값;
public String name; //String 이라는 type의 name이라는 변수 생성
name = "김철수"; //name이라는 변수에 "김철수" 문자열 할당
// java는 문자열에 "" 사용

타입에 따른 변수 구분

  1. 기본 타입
    • 8가지 내장된 built in type
      정수: byte, char, short, int, long
      실수: float, double
      논리: boolean(true, false)
  2. 참조 타입
    • class를 기반으로 한 타입
      String, Array

타입은 더 자세히 있지만 이 글에선 여기까지만 다룹니다.

변수의 종류

  • Local 변수
    - 메소드의 () 또는 {} 내부에 선언
    - 메소드 호출시에만 생성되었다가 메소드 종료 시 자동 소멸
    - 일시적인 사용
    - stack - 저장되는 공간
    - 선언된 메소드 내에서만 사용 가능

  • Member 변수
    - class {} 괄호 내부에 선언되는 변수
    - 객체 생성시 객체를 구성하는 데이터들
    - 객체 생성시 생성, 객체 소멸시 삭제

Class는 무엇인가

객체 지향 프로그래밍에서 클래스는 객체를 만들기 위한 확장 가능한 코드 템플릿이며, 상태(멤버 변수) 및 동작(멤버 함수 or 메서드) 구현에 대한 초기값을 제공한다.

많이 익숙한 예시😅

  • Class 생성
    프로젝트 오른쪽 우 클릭 - new - class
    public class 클래스 이름 { 내용 }
public class People {
	//이름 - 문자열 저장 가능한 메모리
	public String name;
	//나이 - 숫자(정수) 저장 가능한 메모리 ,private: 외부에서 접근 불가
    // int: -+32bit의 정수
	private int age;

People이라는 이름의 class 생성

객체란

객체 : 의사나 행위가 미치는 대상, 문장 내에서 동사의 행위가 미치는 대상, 객체는 변수, 데이터 구조, 함수, 메서드가 될 수 있으며 식별자가 참조하는 메모리의 값이다.

  • 객체 생성
    타입 변수명 = new 생성자();

People p1 = new People();

*ctrl + shift + o : import 자동 완성 단축키

Method -> 기능 구현

자바는 클래스를 떠나 존재하는 것은 있을 수 없기 때문에 함수가 따로 존재하지 않는다. 그래서 함수와 같은 기능을 하는 메소드가 클래스 내에 존재한다.

ex)

public class People {
	private int age; 
	//age 변수 확인하는 메소드
	//1세 이상
	/*하나의 숫자를 받아서
	 * 0을 초과한 양수인지 확인 후
	 * 유효한 경우 age변수에 대입
	 * 무효한 경우 오류 메시지 출력
	 */
	public void setAge(int newAge) {
		if(newAge > 0) {
			age = newAge; //newAge - Local 변수, age - member변수
		}else {
			System.out.println("무효");
		}
	}
    //private으로 외부에 은닉해 놓은 변수 값 반환
	public int getAge() {
		return age;
	}
}

위와 같이 클래스 내의 메소드를 구현해 놓았을 때 이 기능을 통해

	public static void main(String[] args){
		People p1 = new People(); // 객체 생성 후
		System.out.println(p1);
		p1.setAge(30);//setAge()를 사용하여 age값 확인
		int age = p1.getAge(); // getAge()를 사용하여 privae를 외부로 호출 가능
		System.out.println(age);
}

객체 생성 시 함수와 같은 기능을 사용 할 수 있다.

this. ?

자바에서 this는 인스턴스 자기 자신을 가리키는 키워드이다.
객체 자신의 대한 참조값을 가진다.
메소드 내에서만 사용된다.
객체 자신을 메소드에 전달하거나 리턴하기 위해 사용된다.
객체 생성자 내에서 사용할 경우, 다른 생성자를 호출한다.
매개 변수와 객체 자신이 가지고 있는 변수의 이름이 같은 경우 이를 구분하기 위해 자신의 변수에 this를 사용한다.
static 메소드에서는 사용할 수 없다.

public class People {
	public String name;
    //name 변수값 수정 method
    //class내에서 멤버 변수와 로컬 변수명 구분을 위해 this 키워드 사용한다.
	public void setName(String name) {
		//this. 멤버 지정
		this.name = name;
	}
}

0개의 댓글