분류 전체보기 (217) 썸네일형 리스트형 JAVA 입문 - 상속 지난 글: [프로그래밍 언어/JAVA] - JAVA 입문 - 배열 응용 프로그램 객체 지향 프로그래밍의 중요한 특징 중 하나가 상속(inheritance)이라고 한다. 상속은 우리가 일반적으로 아는 '무언가를 물려받는 의미'이다. 예로 B 클래스가 A 클래스를 상속받으면 B 클래스는 A 클래스의 멤버 변수와 메서드를 사용할 수 있다. 객체 지향 프로그램은 유지 보수하기 편하고 프로그램을 수정하거나 새로운 내용을 추가하는 것이 유연한데, 그 기반이 되는 가술이 바로 상속이라고 한다. 클래스의 상속 더보기 우선 상속과 관련하여 사용하는 용어와 문법에 대해 알아보자. B 클래스가 A 클래스에서 상속받는다고 할 때 다음처럼 나타낼 수 있다. 상속에 있어서 헷갈리면 안되는 것이 상속을 하는 클래스에서 상속을 받는.. JAVA 입문 - 배열 응용 프로그램 지난 글: [프로그래밍 언어/JAVA] - JAVA 입문 - ArrayList 클래스 지난 글에서 배운 ArrayList를 사용해 학생 성적 출력 프로그램을 구현해보자. 이 프로그램은 Student 클래스와 Subject 클래스를 사용한다. 만약 어떤 학생이 10과목을 수강한다면 Subject 클래스형 자료형으로 선언한 변수가 10개 필요하다. 또 다른 학생은 4과목을, 어떤 학생은 7과목을 수강할 수도 있다. 따라서 이러한 경우에는 배열을 사용하여 프로그램을 구현하는 것이 좋다. Subject 클래스는 참조 자료형이므로 ArrayList를 활용해 구현한다. 시나리오: 1001학번 Choi와 1002학번 Kim, 두 학생이 있다. Choi 학생은 3과목을 수강한다. 국어 점수가 95점, 영어 점수가 70.. JAVA 입문 - ArrayList 클래스 지난 글: [프로그래밍 언어/JAVA] - JAVA 입문 - 다차원 배열 기존 배열의 단점 더보기 지난 시간에 공부했던 기본 배열은 프로그램에서 사용하려면 항상 배열 길이를 정하고 시작해야한다. 또, 배열을 사용하는 중에는 배열 길이를 변경할 수 없고, 중간에 있는 요소를 비워둘 수 없어서 수정할 일이 생기면 배열을 하나하나 수정해야한다. ArrayList 클래스 더보기 그래서 JAVA는 객체 배열을 좀 더 쉽게 사용할 수 있게 객체 배열 클래스 ArrayList를 제공한다. ArrayList 클래스는 객체 배열을 관리할 수 있는 멤버 변수와 메서드를 제공한다. 오늘은 이 ArrayList의 간단한 사용법을 공부할 것이다. ArrayList 클래스의 주요 메서드 더보기 오늘 배울 ArrayList 클래스.. JAVA 입문 - 다차원 배열 지난 글: [프로그래밍 언어/JAVA] - JAVA 입문 - 배열 다차원 배열 더보기 어제 배운 배열은 모두 행 하나로 이루어진 '일차원 배열'이다. 이번에는 체스 게임이나 네비게이션 지도 등을 구현할 때 사용하는 이차원 배열이나, 주로 공간을 나타내는 프로그램에서 사용하는 삼차원 배열 등 이차원 이상으로 구현한 배열인 '다차원 배열'을 배울 것이다. 이 글에서는 이차원 배열을 배운다. 이차원 배열 더보기 이차원 배열을 선언하는 코드는 다음과 같다. int[ ][ ] num = new int[행 개수][열 개수]; //예시 int[ ][ ] num = new int[2][3]; 더보기 배열의 모든 요소를 참조하려면 각 행을 기준으로 열 값을 순회하면 된다. 이차원 배열을 초기화하려면 아래처럼 행과 열 개.. JAVA 입문 - 배열 지난 글: [프로그래밍 언어/JAVA] - JAVA 입문 - 싱글톤 패턴 배열 배열이란 같은 자료형인 여러 개의 변수들을 한 번에 관리할 수 있게 하는 자료형이다. 배열 선언과 초기화 배열을 사용하기 위해서는 배열을 선언해야 한다. 배열도 변수와 마찬가지로 자료형을 함께 선언한다. 자료형[] 배열이름 = new 자료형[개수]; 자료형 배열이름[] = new 자료형[개수]; 배열을 선언하는 문법은 위와 같다. 배열을 이루는 각각의 자료를 배열 요소라고 한다. 배열 요소는 자료형이 모두 같다. 저장하려는 자료의 성격에 맞게 자료형을 정하고 선언하려는 배열 요소 개수만큼 [ ] 안에 적는다. new 예약어는 배열을 새로 만들라는 의미이다. 배열을 선언하면 선언한 자료형과 배열 길이에 따라 메모리가 할당된다. .. JAVA 입문 - 싱글톤 패턴 지난 글: [프로그래밍 언어/JAVA] - JAVA 입문 - 변수 유효 범위 싱글톤 패턴 더보기 싱글톤 패턴이란 객체 지향 프로그램에서 인스턴스를 단 하나만 생성하는 디자인 패턴을 뜻한다. 디자인 패턴이란 프로그램 특성에 따른 설계 유형을 이론화 한 내용이며 객체 지향 프로그램을 더 유연하고 재활용성이 높은 프로그램을 만들 수 있게 정리한 내용을 말한다. 이번 글에서 배워볼 싱글톤 패턴은 static을 응용하여 프로그램 전반에서 사용하는 인스턴스를 하나만 구현하는 방식이다. 실무나 여러 프레임워크에서 많이 사용하는 패턴이라니 잘 익혀두자. 어떤 회사의 직원들을 객체 지향 프로그램으로 구현한다고 가정하면 직원은 여러명, 회사는 하나이다. 이런 경우에는 회사 객체를 하나만 생성해야한다. 다음과 같이 싱글톤 .. JAVA 입문 - 변수 유효 범위 지난 글: [프로그래밍 언어/JAVA] - JAVA 입문 - static 변수 변수 유효 범위 더보기 지금까지 배운 세 가지 변수들은 지역 변수, 멤버 변수, static 변수이다. 변수는 어디에 어떻게 선언되느냐에 따라 유효 범위(scope)가 달라진다. 지역 변수의 유효 범의 지역 변수는 함수나 메서드 내부에 선언하기 때문에 함수 밖에서는 사용할 수 없다. 따라서 하나의 함수에 선언한 지역 변수는 다른 함수에서 사용할 수 없다. 지역 변수가 생성되는 메모리를 스택이라고 한다. 스택에 생성되는 변수는 함수가 호출될 때 생성되었다가 함수가 반환되면 할당되었던 메모리 공간이 해제되면서 함께 없어진다. 멤버 변수의 유효 범위 멤버 변수는 인스턴스 변수라고도 한다. 클래스가 생성될 때 힙 메모리에 생성된다. .. JAVA 입문 - static 변수 지난 글: [프로그래밍 언어/JAVA] - JAVA 입문 - 객체 간 협력 변수를 여러 클래스에서 공통으로 사용하려면 지난 글에서 만든 학생 클래스를 떠올려보자. 학생 클래스를 사용하면 여러 학생의 인스턴스를 만들 수 있다. 그리고 학생마다 고유한 학번(studentID)를 갖는다. 여기서 학생 클래스가 생성될 때 학번이 자동으로 생성되도록 하려면 어떻게 해야할까. 생성된 인스턴스는 학번을 순서대로 가져야 한다. 이 경우에 각 인스턴스마다 따로 생성되는 변수가 아닌, 클래스 전반에서 공통으로 사용할 수 있는 기준 변수가 있어야한다. 그리고 학생이 한 명 생성될 때마다 기준 변수 값을 하나씩 증가시켜 각 학생 인스턴스의 학번 변수에 대입해주면 된다. 이 때 클래스에서 공통으로 사용하는 변수를 'static.. 이전 1 ··· 22 23 24 25 26 27 28 다음