Java/Java Fundamental

📌 01. 자바 설치 개발 언어의 종류는 굉장히 많다. 자바는 그 많은 종류의 개발언어중 개발에 있어서 특히나 많은 부분을 차지하는 언어이다. 당연한 얘기지만 자바를 사용하기 위해선 자바를 설치할 수 있어야 한다. 개발자는 개발을 하고자 하는 기계에서 자신이 사용할 언어에 대한 기본적인 설치 및 설정을 할 수 있어야 한다. 자바를 설치하기 위해 오라클 홈페이지의 자바 다운로드 페이지로 접속한다. 오라클 홈페이지 -> (상단 메뉴)Resources -> Downloads -> Java 바로 가는 주소 : https://www.oracle.com/java/technologies/downloads/ 막상 오라클 홈페이지에 들어가면 굉장히 많은 종류의 자바 프로그램이 보일 것이다. 전부는 아니더라도 알아두면 좋..
📌 01. 컬렉션 컬렉션이란 다수의 데이터를 쉽고 효율적으로 처리할 수 있는 클래스들의 집합이다. 다수의 데이터를 처리한다는 것이 배열과 유사하지만 가장 큰 차이점은 index가 없어 더 자유롭다는 것이다. 컬렉션은 크게 3가지가 있다. Set 인터페이스 Map 인터페이스 List 인터페이스 보다싶이 3가지 모두 인터페이스이기 때문에 단독으로 인스턴스를 가질 수 없다. 따라서 3개의 인터페이스를 구현하고 있는 자식클래스를 통하여 그 기능을 구현한다. 📖 Set 인터페이스 Set인터페이스를 구현하는 클래스들은 중복된 데이터의 값을 허용하지 않는다. 이것이 Set의 가장 큰 특징이다. 📝 HashSet HashSet클래스는 Set인터페이스를 구현하는 클래스중 가장 많이 쓰이는 클래스이고 Set인터페이스의 특..
📌 01. 추상 추상이란 미완성을 뜻한다. 추상메서드와 추상클래스가 존재하며 각각이 가지는 의미를 알아야 한다. 📖 추상메소드 추상메서드란 미완성의 메서드를 뜻한다. 추상메소드는 선언부만이 존재하고 구현부는 작성되지 않는다. 완성되지 않은 구현부 부분을 자식클래스가 오버라이딩을 통해 자신의 입맛에 맞게 사용한다. 생성자와 달리 메소드이름과 파라미터부분에 제약이 없으며 메소드를 정의할때 추상을 뜻하는 abstract를 표시해줘야 한다. [문법] abstract 반환타입 메소드명();추상메소드의 사용 이유 ​ 먼저 알아야 할 것은 추상메소드의 임무이다. ​ 추상메소드가 정의되면 해당 메소드는 자식클래스에서 반드시 재정의(오버라이드)를 해야한다. ​ 이는 선택이 아닌 의무이고 자식클래스에서 재정의되지 않으면 ..
📌 01. 상속(inherit) 상속은 두 개 이상의 클래스가 어떠한 관계를 가지면서 상속을 맺게 되는 것이다. 따라서 상속이 뭔지 알기 전에 관계를 먼저 배워야 한다. 📖 상속의 관계 is - a 관계 Student라는 클래스와 Person이라는 클래스가 있다고 가정해보자. 위 문장에 이를 대입해보면 -> Student is a Person (학생은 사람이다.) -> Person is a Student (사람은 학생이다.) 둘중 말이 되는 것은 첫 번째 문장이다. 학생은 사람이 맞지만 사람이라고 해서 전부 학생은 아니기 때문이다. 이때 앞에 오는 클래스가 자식 클래스가 되고 뒤에 오는 클래스가 부모 클래스가 된다. 상속은 대부분이 이 is-a 관계이다. 때문에 반드시 숙지를 하고 있어야 한다. has ..
📌 01. 클래스의 구성요소 클래스란 객체를 정의해 놓은 것이다. 흔히 '객체의 설계도'라고 부른다. 클래스를 사용하는 이유는 여러 종류의 데이터를 한곳에 저장하기 위함이 주이다. 📖 필드(field) 필드는 쉽게 '클래스가 어떤 값을 가질 것인가?'이다. 정의는 '객체의 고유 데이터, 부품 객체, 상태 정보 를 저장하는 곳'이지만 전자의 의미로 이해하는 것이 더 쉽다. private String id; private String password;필드값을 생성하는 코드이다. 자세히 보면 변수타입 앞에 'private'란 글자를 있다. 'private'이 붙는 순간 해당 변수는 그 클래스 내부에서만 접근이 가능하게 된다. 같은 말로 다..
📌 01. 배열이란? 예를 들어 int형 변수 5개를 선언하고 각각의 변수에 임의의 숫자를 넣을때 우리는 이 행동을 반복으로 생각하고 반복문을 쓸 것이다. 하지만 변수의 이름이 다르기 때문에 이는 반복문을 통하여 수행할 수 없다. 이 문제는 배열을 사용하면 해결할 수 있다. 변수들에게 같은 이름을 주고 식별 번호를 부여하여 호출을 하는 구조가 바로 '배열'이다. 📖 인덱스(index) 위에서 배열은 변수를 같은 이름으로 선언하고 각 변수마다 식별을 위한 식별 번호를 부여한다고 했다. 여기서 이 식별 번호를 인덱스(index)라고 부른다. 인덱스는 시작이 1이 아닌 0이라는 점을 주의해야 한다. 📖 요소(element) 배열에 인덱스가 부여된 변수 하나하나의 값을 요소(element)라고 부..