Notice
Recent Posts
Recent Comments
Link
«   2025/08   »
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
관리 메뉴

노승현

Class 란? (2) 본문

JAVA/개념공부

Class 란? (2)

nsh95 2023. 12. 1. 08:21

메서드  vs  함수

 


메서드


함수에게 주어가 있는경우 

 funcA(); , main(); static 객체와 무관
student.hello();
data.printInfo();
rand.nextInt();
sc.nextInt();
System.out.println();
static 없음
. << 멤버접근  연산자

 

 

함수

 

주어가 없다

 

 


클래스명 객체명 = new 생성자();

객체
클래스 타입의 변수
객체명 == 인스턴스 instance (!=object)

객체를 생성할 때에는 new 생성자();

생성자
함수
"클래스와 이름이 같은"
멤버변수를 초기화하는 역할

 

로그찍기
로그 == 현 상황을 알려주는 출력문

 

 

원인 String은 일반적인 원시타입이 아니다.
단순 연산자로는 비교가 불가능하다.
해결) .equals() 메서드를 사용해서 비교해야만 한다.

 

 

생성자 오버로딩

어떤 클래스의 모든 객체가 동일한 멤버변수값을 가질 때에 우리는 그 멤버변수를 공유자원이라고 하며
객체와 무관하므로 static을 붙임
static이 붙은건 더이상 멤버변수가 아니다. 그러므로 멤버변수를 초기화하는 생성자에서 초기화 하지않고 
클래스에서 초기화한다.
공유자원 -> 클래스 소속
멤버변수 -> 객체(인스턴스) 소속

☆가장 인자가 많은 항목부터 생성한다



this . ? <<< 모든 멤버변수 앞에는 반드시 this를 붙일 것 ★



this. 를 붙인것과 안 붙인 것에는 성능차이가 발생한다.



인자가 많아지면 헷갈리기 때문에 this 를 사용 this . x = x 



생성자에서 인자가 가장 많은 생성자를 제외하고 나머지 인자를 this (  ) 로 묶어서 사용할 수 있다

 

 


각각의 객체마다 다른값인가?
yes -> 멤버변수(속성)
각각의 객체가 다 같은 값인가?
yes -> static
클래스 소속

'JAVA > 개념공부' 카테고리의 다른 글

추상 클래스란?  (0) 2023.12.06
상속이란?  (0) 2023.12.01
함수의 모듈화  (0) 2023.11.28
함수란?  (1) 2023.11.27
선택정렬 예시  (1) 2023.11.23