inflearn logo
강의

Course

Instructor

Java TPC (Think, Express, Code)

Is there a private constructor? (Related to static)

클래스 내부의 인스턴스 메서드 끼리의 호출

331

yjk9805

3 asked

0

이 강의로 자바 기초를 다지면서 자바 알고리즘 강의도 듣고있습니다. 강의를 듣다가 궁금해진게 한 클래스 내부에서 static main 메서드 안에서 인스턴스 메서드를 호출할때는 Main클래스를 생성해서 호출하지만 재귀함수나 두개 이상의 인스턴스 메서드끼리 상호작용 할 때는 객체를 생성하지 않고 클래스 이름도 붙이지 않고 바로 메서드를 사용할수있는데 이는 어떤경우일까요? 답변주시면 감사하겠습니다.

아래 코드는 예시입니다.

solution 메서드에서 DFS메서드호출하는부분이 궁급합니다

class Main {
	static int n,m,answer =0;
	static int[] dx = {-1, -1, 0, 1, 1, 1, 0,-1};
	static int[] dy = { 0, 1, 1, 1, 0,-1,-1,-1};
	public void DFS(int x, int y, int[][] board) {
		for(int i=0;i<8;i++) {
			int nx=x+dx[i];
			int ny=y+dy[i];
			if(nx>=0 && nx<n && ny>=0 && ny<n && board[nx][ny]==1) {
				board[nx][ny]=0;
				DFS(nx,ny,board);
			}
		}
	}
	public void soulution(int[][] board) {
		for(int i=0;i<n;i++) {
			for(int j=0;j<n;j++) {
				if(board[i][j]==1) {
					answer++;
					board[i][j]=0;
					DFS(i,j,board);
				}
			}
		}
	}
	public static void main(String[] args) {
		Main T = new Main();
		Scanner kb = new Scanner(System.in);
		n=kb.nextInt();
		int[][] arr = new int[n][n];
		for(int i=0;i<n;i++) {
			for(int j=0;j<n;j++) {
				arr[i][j]=kb.nextInt();
			}
		}
		T.soulution(arr);
		System.out.println(answer);
 	}                 
}   

oop java

Answer 1

0

bitcocom

Main T=new Main();을했기 때문에 이미 메서드는 메모리에 올라가 있는 상태이구요. 또 같은 클래스내에 2개의 메서드가 있다면 1의 메서드에서 2의 메서드는 메서드 이름으로 호출이 가능합니다~^

인프런 자바 강의 보고있는데요. 질문.

0

170

1

질문입니다

0

241

1

call by reference 관련 자바는 call by value방식만 존재하지 않나요?

0

963

1

ArrayLIst에 대해서 궁금합니다

0

375

1

자바버전

0

607

1

오버로딩 생성자

0

455

1

안녕하세요

0

348

1

문자열 String 에 대해 질문이 있습니다.

1

562

1

선생님 질문있습니다.

0

358

1

인강 강의내용

0

450

1

static 멤버 사용

0

428

1

강사님 추상메소드에서 전달하는 매개변수도 재정의 할때 반드시 구현하는건가요?

0

429

1

강사님 abstract 부분 궁금한점 있습니다!!

0

322

1

강사님 private 관련해서 궁금한점 있습니다!

0

338

1

45강 실습관련 질문드립니다

0

358

2

완강했습니다!!

0

367

1

Class생성시 관련하여 질문드립니다

0

235

1

안녕하세요 IDE관련해서

0

352

1

String관련 질문입니다

0

291

1

추상클래스 질문!

0

284

1

Wrapper 클래스란?(실습) 프로젝트에서

0

585

1

java 11로 해도 되나요?

0

435

1

궁금한 게 있습니다.

0

291

1

Java의 Call by Reference

0

263

1