반응형 분류 전체보기128 [JAVA] Chapter 11. Inheritance (2) ① Method Overriding Method overriding은 객체지향에서 매우 중요한 개념이기 때문에, 다음 세 가지 개념을 잘 기억해 두어야 한다. 1) Method Overriding은 Super 클래스에서 선언된 메서드의 이름, 리턴 타입, 파라미터 선언까지 완전히 동일한 메서드를 Sub 클래스에서 새롭게 재정의 하는 것이다. 즉, 완전히 동일한 메서드인데 body를 다르게 쓰는 것이다. 하지만 메서드를 이렇게 정의하면, 메서드를 호출했을 때 어떤 메서드를 쓰는지 구분이 어렵다. overloading에서는 파라미터로 구분했는데, overriding은 이름과 파라미터까지 모두 같기 때문이다. Overriding에서는 Sub 클래스의 메서드로 Super 클래스의 메서드를 가린다. Sub가 가장.. 2023. 7. 14. [JAVA] Chapter 11. Inheritance (1) ① 상속 상속이란, super 클래스가 가지고 있는 변수와 메서드를 sub 클래스에게 그대로 물려주는 것이다. 코드로는 class Sub extends Super라고 적는다. Sub 클래스는 상속을 받은 후 본인이 필요한 변수나 메서드를 추가한다. 일반적으로 상속의 목적은 코드의 재활용이라고 알려져 있지만, primary target은 다형성을 위한 것이다. 문법적으로 super class에는 어떤 클래스가 와도 되지만, 상속의 개념을 지키기 위해서는 반드시 IS-A 관계를 만족하는 class를 사용해야 한다. ② Inheritance Rule 1) 상속은 *반드시* IS-A 관계를 만족해야 한다. extends 대신 is a를 넣었을 때 말이 되지 않는다면, 상속을 걸어서는 안 된다. ex) lapto.. 2023. 7. 13. [JAVA] Chapter 10. Array 자바에서는 배열과 컬렉션(Collection) 두 가지 저장소를 사용한다. 배열의 크기가 정해져 있고, 인덱스를 사용하여 요소에 접근할 수 있으며, 연속된 메모리 공간에 요소를 저장하기 때문에 데이터의 접근이 빠르고 효율적이다. 그러나 배열은 크기를 동적으로 변경할 수 없으므로 초기에 지정한 크기보다 더 많은 데이터를 저장할 수 없다. ① What is Array? 배열은 반복문을 사용할 때 유용하게 사용되는데, 반복문을 사용할 때는 고려해야 할 사항들이 있다. 1) 반복문 내부에 들어오는 코드는 코드의 변화 없이 값만 변화해야 한다. 따라서 이름이 다른 변수가 많을 때는 반복문을 사용할 수 없다. 2) for 문 내부에 들어오는 데이터는 반드시 순서를 가지고 있어야 한다. 배열을 저장소 관점으로 접근할.. 2023. 7. 12. [JAVA] Chapter 9. String 프로그램을 개발할 때 문자열을 많이 사용하지만, 앞서 배운 연산은 문자열에 사용하지 못한다. 문자열은 연산을 위한 별도의 method들이 존재한다. 프로그래밍 언어 중 문자열을 받아주는 data type이 따로 존재하는 언어는 없기 때문에 언어마다 문자열을 어떻게 처리하는지 알아야 한다. ※ 어떤 프로그래밍 언어든지, 문자열은 "상수"이기 때문에 값을 변경할 수 없다. ① 문자열 String str = "JAVA"; String은 클래스이므로 str은 reference 변수, 따라서 주솟값을 저장해야 한다. 주솟값을 가져오려면 메모리에 올라가 있어야 하는데, 우변은 문자열 "JAVA"이다. 자바 진영에서 static 변수에 이어 문자열은 new 연산자 없이 스스로 메모리에 올라간다. 자바에서는 doubl.. 2023. 7. 11. 이전 1 ··· 24 25 26 27 28 29 30 ··· 32 다음