2024/10/09 4

[JAVA] 인터페이스 (Interfaces)

자바에서 인터페이스란?: 클래스가 구현해야 하는 메서드들의 집합을 정의하는 일종의 템플릿객체의 동작을 명시하는 역할을 한다.해당 인터페이스를 구현하는 클래스는 그 안에 선언된 모든 메서드를 반드시 구현해야 한다. 특징인터페이스 안에는 기본적으로 구현되지 않은 추상 메서드들이 정의된다. 메서드들은 선언만 되어  있고 실제 구현은 인터페이스를 구현하는 클래스에서 이루어진다.자바 클래스는 여러 인터페이스를 구현할 수 있다. 이를 통해 다형성을 높이고 클래스가 다양한 행동을 가질 수 있게 한다.인터페이스 안에 선언된 변수는 암묵적으로 public, static, final 로 간주되며 상수로 동작한다.인터페이스는 다른 인터페이스를 상속할 수 있으며 여러 인터페이스로부터 상속받아 새로운 인터페이스를 정의할 수 있..

JAVA/기초공부 2024.10.09

[Python] 백준 12015 가장 긴 증가하는 부분 수열 2

문제수열 A가 주어졌을 때, 가장 긴 증가하는 부분 수열을 구하는 프로그램을 작성하시오.예를 들어, 수열 A = {10, 20, 10, 30, 20, 50} 인 경우에 가장 긴 증가하는 부분 수열은 A = {10, 20, 10, 30, 20, 50} 이고, 길이는 4이다.https://www.acmicpc.net/problem/12015        난이도골드2    내 코드import sysdef binarySearch(value) : left = 0 right = len(lis) - 1 while left value : right = mid - 1 else : left = mid + 1 return leftn = int(sys..

백준풀이 2024.10.09

[JAVA] 추상 클래스

개요자바언어는 클래스들이 중심인 언어로서 문제 해결을 위한 클래스를 설계할 때 클래스의 사용과 구현을 분리하여 무엇을 해야 하는지에 중점을 두어 설계한다.슈퍼 클래스에서 행위에 해당하는 메소드를 나타내고 그 행위를 어떻게 하는지는 추상적으로 표현함으로써 무엇을 하는가를 알 수 있는 명세서를 제공한다.서브클래스에서 슈퍼 클래스의 메소드를 오버라이딩하여 실제 어떻게 해야하는지를 구현해야 한다.추상적으로 표현된 클래스는 인스턴스를 만들 수 없으며 실체가 없는 추상클래스가 된다.     추상 클래스 (Abstract  Class): 추상 메소드를 하나 이상 포함 하고 있는 클래스의 경우추상 메소드는 메소드의 선언 부분만을 가지고 있으므로 상속 받은 자식 클래스에서 반드시 구현을 필요로 하는 메소드이다.     ..

JAVA/기초공부 2024.10.09

[JAVA] 형 변환, static, final

클래스의 형 변환이란?: 객체가 다른 타입으로 변환되는 것업캐스팅과 다운캐스팅이 있다.    업캐스팅: 하위 클래스의 객체를 상위 클래스 타입으로 변환하는 것업캐스팅은 암시적으로 이루어지기 때문에 명시적으로 변환할 필요가 없음🔸 업캐스팅을 하면 상위 클래스에 정의된 메서드들만 사용할 수 있고, 하위 클래스에 추가된 메서드는 사용할 수 없다.🔸 업캐스팅을 하면 객체는 실제로는 여전히 원래의 하위 클래스의 인스턴스이지만, 상위 클래스 타입으로 참조하게 된다. => 객체의 실제 타입이 바뀌는 것이 아니라 그 객체를 가리키는 참조 변수의 타입이 바뀌는 것    다운캐스팅: 상위 클래스 타입의 객체를 하위 클래스 타입으로 변환하는 것업캐스팅과 달리 명시적으로 변환을 해주어야 한다🔸 잘못된 다운캐스팅은 Cla..

JAVA/기초공부 2024.10.09