Java_04

Java_04

#변수에 리스트내용을 차례대로 넣기

for(자료형 변수명 : 리스트){ 코드 }

#다차원 배열

//선언 자료형[][] 배열명 = {{값, 값, ...}, {값, 값, ...},...}; 자료형[][] 배열명 = new 자료형[크기][크기];

#리스트형 변수

메소드(자료형[] 변수명){}

#메소드(≒ 함수)

메소드명칭() - ex) println(), nextInt(), ...

어떠한 기능을 하는 것

#변수의 사용 이유

값을 재사용하기위함

#메소드의 사용 이유

코드를 재사용하기위함

#메소드 선언

클래스 안, 메인메소드 밖에서 선언(정의)

public static 리턴타입 메소드명(매개변수타입 매개변수, 매개변수타입 매개변수, ...){ 실행 return 리턴값; //리턴타입이 void의 경우에 return이 없어도 되고 있으면 해당위치에서 메소드종료 }

#메소드 사용(호출)

클래스명.메소드명(매개변수, 매개변수, ...);

#메소드 오버로딩(overloading)

같은이름의 메소드라도 매개변수의 개수나 타입이 다르면 다른 메소드이다.

#다형성(polymorphism)

객체지향 언어의 4가지 특징 중 한 가지로

하나이 클래스나 하나의 함수가 다양한 방식으로 동작이 가능한 것

ex)오버로딩

#지역변수(local variable)

메소드 안에서 선언된 변수(매개변수포함)

해당 지역 안에서만 사용가능

#메소드의 매개변수

사용자가 넘긴 값을 잠시 복사하여 사용하는 저장공간

메소드 종료시 해제됨

##클래스(class)

#클래스 정의 (자료형 만들기)

class 클래스명{ //클래스명은 대문자로 시작을 권장 멤버변수 //(인스턴스변수, 클래스변수) 멤버함수 }

#객체(인스턴스)선언

클래스명 선언할객체명 = new 클래스명(); //클래스명()은 생성자

#class 안에서의 static - 다른 객체들과 공유됨

한 객체에서 바꾸면 다른 객체에서도 바뀜

클래스명.변수명 으로 접근가능

static 변수 : 클래스변수

static 메소드의 경우 모든 객체에서 동일하게 동작하기 때문에

인스턴스변수 사용불가

#초기화 생성자

생성하면서 값을 초기화도 동시에 진행

public 클래스명(값들){ this.인스턴스변수 = 값; } //자기자신의 객체를 this가 받아옴

정의하지 않으면 자동으로 생성되지만

정의하면 자동으로 생성되는 생성자는 생성되지 않으므로 따로 정의해야함

+)Scanner

new Scanner(System.in); 직접 입력받기

new Scanner("텍스트이름"); 텍스트로 입력받기

#접근제어자

public

모든곳에서 사용가능

default

같은pakage에서 사용가능

protected

같은pakage에서 사용가능

상속받은 pakage에서 사용가능

private

선언한 class안에서만 사용가능

클래스에서 변수를 private로 선언하면

직접접근하지 못하므로

메소드를 통해서 접근해야함

이 경우 값을 검사할 수 있다

설정하는 메소드를 setter

가져오는 메소드를 getter

from http://playpizza.tistory.com/38 by ccl(A) rewrite - 2021-11-28 20:28:13