'4월 28일' 잎새 달 일요일의 기록 [TIL]

가은·2024년 4월 28일
0

I Learned [본 캠프]

목록 보기
13/135
post-thumbnail

📑오늘 학습한 내용

🧩오늘의 알고리즘 : 두 수의 나눗셈 🧩

/*java로 작성한 코드*/
class Solution {
    public int solution(int num1, int num2) {
        double result = (double)num1 / num2 * 1000; 
        return (int)result; 
    }
}
#python으로 작성한 코드
def solution(num1, num2):
    answer = num1 / num2 * 1000
    return int(answer)

Java 내용 정리

↓ 다형성 : 같은 이름의 메소드가 클래스나 객체에 따라 다르게 동작하도록 구현

  • 매소드 오버로딩 : 같은 이름이지만 다르게 작동하는 여러 메소드
  • 메소드 오버라이딩 : 슈퍼클래스의 메소드를 서브 클래스마다 다르게 구현

클래스 : 객체를 만들어내기 위한 설계도, 객체의 속성과 행동을 포함
객체 : 인스턴스, 프로그램 중 생성되며 메모리를 갖는 구체적인 실체

  • 반드시 new 키워드를 이용하여 생성
  • 객체의 멤버 접근 : 객체 레퍼런스.멤버

필드 : 객체 내에 값을 저장하는 멤버 변수
메소드 : 함수이며 객체의 행동 구현
생성자 : 클래스의 이름과 동일한 특별한 메소드, 객체를 초기화하는데 필요한 코드 작성

  • 생성자 = 메소드
  • 여러 개 작성 가능(오버로딩)
  • 리턴 타입 지정 X
  • 클래스에 생성자가 하나라도 작성한 경우 기본 생성자가 자동 삽입되지 않음 (컴파일 오류 발생)

this : 객체 자신에 대한 레퍼런스

  • 객체의 멤버 변수와 메소드 변수의 이름이 같은 경우
  • 다른 메소드 호출 시 객체 자신의 레퍼런스를 전달할 때
  • 메소드가 객체 자신의 레퍼런스를 반환할 때
  • this.멤버
//접근 권한 //클래스 선언 //클래스 이름
public       class       Circle{
	public itn radius;    // 원의 반지름 필드
    public String name;   // 원의 이름 필드
    pbulic Circle() {     // 원의 생성자 메소드
    }
    public double getArea() {    // 원의 면적 계산 메소드
    	return 3.14*radius*radius;
    }
}

0개의 댓글