본문 바로가기
TIL

[23.03.22.] 국비지원 풀스택 개발자 과정 - Day 11

by DevPark 2023. 3. 22.

Math 클래스

- Math클래스의 주요 메소드 
- 절대값: static 반환타입 abs(매개변수): 반환타입은 매개변수의 타입에 따라 결정됨.

- 올림값 :static double ceil(double a) : 소수점에서 큰 수로 가장 가까운 정수를 찾는다.

- 내림값 : static double floor(double a)  : 소수점에서 작은 수로 가장 가까운 정수를 찾는다.

- 반올림 : 무조건 소수점 첫째자리에서 반올림

- 지수: static double pow(double a, double b)  : a의 b승을 의미 

- Math.random() 과 같은 기능을 제공해주는 Random클래스.
- (int)(Math.random()*(차이값+1))+시작값
- Random클래스의 인스턴스변수.nextInt(차이값+1)+시작값

- seed:난수를 발생시키는 알고리즘이 사용하는 씨앗값
- seed값 설정:동일한 패턴(고정된)의 난수를 발생시킨다

 

- Math 클래스의 abs() 메소드와 같은 기능을 하는 메소드 정의해보기

- Math 클래스의 round() 메소드와 같은 기능을 하는 메소드 정의해보기

- Math 클래스의 pow() 메소드와 같은 기능을 하는 메소드 정의해보기

- Math클래스는 인스턴스화(객체화/HEAP영역에 메모리 생성) 불가

 

 

Date 클래스

- Date클래스:날짜 정보를 다루는 클래스로 대부분 Deprecated되었음
- Date()기본 생성자나 Date(long date)인자 생성자를 제외한 
- 모든  생성자와 대부분의 메소드가  Deprecated됨. 
-   java.util패키지에 있음
-  Date클래스의 toString() 메소드도 메모리의 주소를 문자열로 반환하는 것이 아니라 저장된 날짜 데이타를 문자열로 반환되도록 오버라이딩 되어있다.

- Date클래스의 getTime() : int getTime()
- 1970년 1월 1일 0시 0분 0초부터 특정 시점까지 흘러온 시간을 1000분 1초단위로 반환:long getTime()
- 영국에 있는 그리리치천문대 기준으로 하기 때문에 우리나라는 9시간 빠르다.

Calendar 클래스

- 생성자로 Calendar객체를 인스턴스화 할 수없다. 왜냐하면 접근지정자가 protected이기때문에 Calendar클래스는 Single tone Design으로 정의 되어있다. 그래서 getInstance()메소드로 인스턴스화 한다.
-  java.util패키지에 존재

- Calendar클래스의  getTime() : Date getTime()
- Calendar타입을 Date타입으로 변환(두 클래스가 상속관계가 아님으로 형변환은 불가하기때문에)

- 특정 날짜 설정 방법1 : void setTime(Date)
- Date 타입을 Calendar타입으로 변환

- 특정 날짜 설정 방법2 : set()메소드

- SimpleDateFormat클래스:java.text패키지에 있는 클래스로 날짜관련 정보를 얻는 데 유용한 클래스이다. 

 

Date타입을 String형으로 반환해주는 메소드
-  날짜패턴에 맞게 반환 해줌.
-  String format(Date d);
-  Date->String

 

중간에 날짜 패턴 변경 -applyPattern(String 날짜패턴)

 

날짜형식의 문자열을 Date타입으로 반환 해주는 메소드
 Date parse("날짜형식의 문자열");
 String ->Date
단,날짜 형식의 문자열이 날짜패턴과 일치해야한다

 

패턴을 반환하는 메소드:toPattern()

 

캡술화(은닉화)

-관련있는 데이타를 하나로 묶는것 
-멤버변수에 외부에서(다른 클래스) 접근 못하도록 막는 것
- 단,메소드를 통해서 멤버변수의 값을 읽거나 설정하도록 한다.
 
 -Getter : 접근지정자가 private인 멤버변수의 값을 읽을 수 있는 메소드 

//Getter 형식

private 변수타입 변수명
public 반환타입(해당 멤버변수의 자료형) get멤버변수명(){

return 멤버변수명;
}



- Setter : private한 멤버변수에 값을 설정하는 메소드

//Setter 형식

public void set멤버변수명(매개변수타입(멤버변수의 타입) 매개변수명){
멤버변수명=매개변수명;
}

 

this 키워드

 

- this는 인스턴스형 메소드 안에서만 사용가능하다.
- this. 하면 자기자신의 모든 멤버(인스턴스형,정적)가 뜬다.
- 정적멤버도 this키워드로 접근 가능하지만 in a static way으로 접근하라고 경고가 나온다.
- this키워드는 지역변수와 멤버변수를 구분할때 주로 사용
- 지역변수(매개변수)와 멤버변수가 같은 지역안에서 사용될때 이름이 같은 경우 지역변수가 우선한다.
- 매개변수 = 매개변수; 멤버변수 초기화 안됨.

- 지역변수와 멤버변수 구분이 가능할때는 this는 생략 가능하다. 
- 정적 멤버와 지역변수가 동일할때는 this가 아닌 클래스명으로 접근해서 구분해야한다

 

 

 

 

반응형

댓글