Notice
Recent Posts
Recent Comments
Link
«   2025/07   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
Tags
more
Archives
Today
Total
관리 메뉴

290570

24.05.17 본문

java_spring (2024.05 ~ 2024.10)

24.05.17

qordpsem 2024. 5. 17. 11:23

this

- 생성자나 메소드의 매개변수 이름을 의미있는 이름으로 정해주다보면 멤버 변수명과 겹치게 됨

  멤버자신을 구별할 목적으로 사용함

this( )

- 생성자가 중복정의 되어있을때 생성자 안에서 또 다른 생성자를 동작시키고자 할 때 사용하는 문장

  반드시 생성자의 첫번째 문장에 와야함

 

*생성자 : 객체를 생성함과 동시에 자동으로 멤버변수들을 초기화 시켜주는 특수 메소드

 

 

 

#매개변수명 지정

 

생성자의 매개변수 이름을 의미있는 이름으로 정해주다보면 멤버변수이름과 동일하게 됨

이때 생성자 body 안에서는 매개변수의 우선순위가 높아서 매개변수 title에 매개변수 title을 저장하는 의미없는 동작을 하게되고 멤버변수에는 초기화가 되지 않음

 

<<<  this  >>>

생성자나 메소드의 매개변수이름을 의미있는 이름으로 정해주다보면 멤버변수명과 겹치게 된다

이때 멤버 자신을 구별할 목적으로 this를 사용한다

 

 

 

 

#생성자의 중복 정의

(String author, String title) 해도 똑같이 오류남

변수명 가지고 구별하지 않음

매개변수 개수나 타입이 아예 달라야함

 

*필요하다면 생성자를 중복 정의 할 수 있다

*다만 중복 정의 시 매개변수 개수가 다르거나 자료형이 달라야 한다

 

 

 

 

아래의 public Book( ){this("제목없음","저자없음");} 이  위의 public Book(String title, String author) {...} 를 

 

 

 

 

다른 생성자를 요구하는 this ( )는 생성자의 첫번째 문장에 와야함

 


 

 

#기본생성자

- 매개변수를 하나도 갖지 않는 생성자를 말하며 사용자가 생성자를 만들지 않으면 자바가 "기본생성자"를 제공해주며 각각의 자료형에 따라 초기화 해준다.

참조자료형은 null / int 0, double 0.0, boolean false, ...

 

그러나 사용자가 생성자를 한개라도 만들기 시작하면 더이상 "기본생성자"를 제공하지 않음

필요하다면 사용자가 직접 만들어서 사용해야 함

 

 

#기본생성자 제공

 

 

 

#기본생성자 제공 X

 

사용자가 생성자 만들기 시작하면 기본생성자 제공 X

필요하다면 사용자가 만들어서 사용해야함

 

 


 

하나의 파일에 하나의 클래스만 만드는게 일반적

부득이하게 하나의 파일에 여러개의 클래스 만들때는 파일명과 동일한 클래스에만 public 붙이고,

그 클래스에 main 메소드 포함시킴

 

'java_spring (2024.05 ~ 2024.10)' 카테고리의 다른 글

24.05.20  (0) 2024.05.20
05.17 과제  (0) 2024.05.17
05.16  (0) 2024.05.16
24.05.16  (0) 2024.05.16
24.05.15  (0) 2024.05.15