본문 바로가기

Java13

Java - 자료구조 (배열,연결리스트,스택,큐) 자료구조 자료구조(Data Structure)란 무엇인가? 프로그램에서 사용할 많은 데이타를 메모리 상에서 관리하는 여러 구현방법들 효율적인 자료구조가 성능 좋은 알고리즘의 기반이 됨 자료의 효율적인 관리는 프로그램의 수행속도와 밀접한 관련이 있음 여러 자료 구조 중에서 구현하려는 프로그램에 맞는 최적의 자료구조를 활용해야 하므로 자료구조에 대한 이해가 중요함 자료구조의 종류 선형 자료구조 한 줄로 자료를 관리하는 구조 자료들 간의 앞뒤 관계가 1:1의 선형관계 배열(Array), 연결리스트(LinkedList), 스택(Stack), 큐(Queue) 등이 있다. 비선형 자료구조 하나의 자료 뒤에 여러개의 자료가 존재할 수 있는 구조 자료들 간의 앞뒤 관계가 1:n, 또는 n:n 의 관계 트리(Tree)와.. 2022. 11. 17.
Java - 자바의 유용한 클래스 Object 클래스 - 모든 클래스의 최상위 클래스 java.lang 패키지 import java.lang.*; 프로그래밍시 import 하지 않아도 자동으로 imort됨 많이 사용하는 기본 클래스들이 속한 패키지 ex) String, Integer, System... 모든 클래스는 Object 클래스를 상속 받는다 java.lang.Object 클래스 모든 클래스는 Object에서 상속받고, Object 클래스의 메서드 중 일부는 재정의해서 사용할 수 있음 평소에는 컴파일러가 extends Object를 추가함 public class Student {} -> public class Student extends Object {} toString() 메서드 객체의 정보를 String으로 바꾸어서 사용할 때.. 2022. 11. 17.
Java - 다형성과 인터페이스 다형성 다형성(polymorphism)이란? 하나의 코드가 여러 자료형으로 구현되어 실행되는 것 같은 코드에서 여러 다른 실행 결과가 나옴 정보은닉, 상속과 더불어 객체지향 프로그래밍의 가장 큰 특징 중 하나 다형성을 잘 활용하면 유연하고 확장성있고, 유지보수가 편리한 프로그램을 만들 수 있음 다형성을 사용하는 이유? 상속과 메서드 재정의를 활용하여 확장성 있는 프로그램을 만들 수 있음 그렇지 않는 경우 많은 if-else if문이 구현되고 코드의 유지보수가 어려워짐 상위 클래스에서는 공통적인 부분을 제공하고 하위 클래스에서는 각 클래스에 맞는 기능을 구현 여러 클래스들을 하나의 타입(상위 클래스)으로 핸들링할 수 있음 추상 클래스 구현하기 추상클래스(abstract class)란? 구현 코드 없이 메서.. 2022. 11. 17.
Java - 상속 상속 객체간의 상속이란? 클래스 상속 새로운 클래스를 정의 할 때 이미 구현된 클래스를 상속(inheritance) 받아서 속성이나 기능을 확장하여 클래스를 구현함 이미 구현된 클래스보다 더 구체적인 기능을 가진 클래스를 구현해야 할때 기존 클래스를 상속함 상속하는 클래스 : 상위 클래스, parent class, base class, super class 라고 부름 상속받는 클래스 : 하위 클래스, child class, derived class, subclass 라고 부름 class Student extends Person { .... 상속 선언 방법 } 상속을 구현 하는 경우 상위 클래스는 하위 클래스 보다 더 일반적인 개념과 기능을 가짐 하위 클래스는 상위 클래스 보다 더 구체적인 개념과 기능을 .. 2022. 11. 17.