package week2; import java.util.*; public class Pro { public static void main(String[] args) { Scanner sc = new Scanner(System.in);
int num = sc.nextInt();
Pro pro = new Pro(); //클레스를 이용하여 객체생성 pro.Pro(num); // 객체의 메소드를 호출(호출부) }
public void Pro(int n) { //메소드생성 for(int i=1;i<10;i++) System.out.println(n+"*"+i+"="+(n*i)); } } |
- Java에서 [메소드]란
C언어에서 [함수]와 비슷한 개념이다. -> 로직만 있으면 된다.
데이터를 메소드에 넣어주면 결과값을 return 해준다.
public void Pro(int n) |
return 값이 없을 경우 void를 사용하면 되고, 정수형으로 return 하려면 int등, 자신이 원하는 자료형을 써주면된다.
(int n) -> 매개변수로 전하고싶은 데이터가 없으면 빈괄호()만 써줘도된다.
매개변수는 두개가 될수도 있고, 세개가 될수도 있다. EX. (int i, String a, double d) -> 가능하다.
객체란 ?
같은 종류인 [데이터]와 [로직]이 함께있는 구성체 -> 독립체.
☞ 자동차에서 운전대, 브레이크,기어 등 - 메소드(모든차가 공통적으로 가지고있다.)
색상, 배기량 - 데이터(차마다 다르다. 즉, 구분이 된다.)
객체는 메소드의 상위개념이다.
객체는 클래스로 부터 생산(복사본)이 된다.
클래스를 복사한 <객체1> <객체2> <객체3>은 서로 관계가 없는 객체이고, 다른 데이터를 가지고있다.
기초자료형 : 직접적인 데이터가 들어간다. -> int i=10;
정수형(int) 변수(i)에는 10이라는 데이터가 직접적으로 들어간다.
객체자료형 : 객체의 주소값이 변수에 들어간다. -> ClassName classname = new ClassName();
처음 ClassName은 자신이 만든 class이름이고, 그다음 나오는 classname(객체 변수)은 자신이 변수이름을 짓는것처럼 개발자가 지정할수있다. 그다음 new는 생성자라고 하는데, 이것이 클래스를 복사하는것이다. 그 뒤에 ClassName();이 이것을 복사한다라고 생각하면 될것이다.
*배열 변수와 객체 변수의 공통점은 주소값이 변수에 들어간다. <- 래퍼런스 변수
객체 안에 종속되어 있는 데이터는 완전히 별개의 데이터다.
→ object1 i
Class int i |
↘ object2 i
위에 object1에 i와 object2의 i는 서로 다른 i(데이터)이다.
'전공수업 > JAVA' 카테고리의 다른 글
[JAVA] 기초 문법 - LIST(KEY,VALUE) 키 값 출력(꺼내기) (0) | 2022.12.02 |
---|---|
[JAVA 기초] 자바 생성자 설명 (0) | 2022.01.26 |
[JAVA / 자바] 알고리즘 공부(메소드) (0) | 2021.05.23 |
[Java] ==, equals(), hashcode() 란? (0) | 2021.05.17 |
JAVA_Array_(1) (0) | 2018.07.20 |