본문 바로가기

Lang13

[java] 추상화와 인터페이스 [1. 추상클래스의 이해] 추상 클래스 - 추상 클래스 : 하나 이상의 추상 메소드를 포함하는 클래스 - 다형성을 가지는 메소드의 집합을 정의할 수 있도록 해줌 - 반드시 사용되어야 하는 메소드를 추상 클래스에 추상 메소드로 선언해 놓으면, 이 클래스를 상속받는 모든 클래스에서는 이 추상 메소드를 반드시 재정의해야 함 메소드 오버라이딩 - 객체 지향 프로그래밍에서 서브 클래스 또는 자식 클래스가 자신의 슈퍼 클래스들 또는 부모 클래스들 중 하나에 의해 이미 제공된 메소드를 특정한 형태로 구현하는 것 - 예시 class SuperClass {//슈퍼클래스 public void sum(int x, int y) { int result = x + y; System.out.println(result); } } c.. 2023. 6. 4.
[java] 객체 지향 프로그래밍 [1. 객체지향 프로그램] 객체 지향 프로그래밍(Object-Oriented Programming, OOP)이란? - 컴퓨터 프로그램을 명령어의 목록으로 보는 시각에서 벗어나 여러 개의 독립된 단위, 즉 "객체"들의 모임으로 파악하고자 하는 것 - 각각의 객체는 메시지를 주고 받고 데이터를 처리할 수 있음 객체 지향 프로그래밍의 장점 - 코드의 재사용성이 높아짐 - 프로그램을 유연하고 변경이 용이하게 해줌 - 소프트웨어 개발과 보수를 용이하게 함 - 보다 직관적인 코드 분석을 가능하게 함 - 코드의 중복을 제거함 [2. 객체지향 언어의 특징] 캡슐화 (Encapsulation) - 모든 변수들과 메소드들을 클래스 단위로 모으는 것 - 객체 안에 데이터와 메소드를 숨기는 것 - 객체 속성과 메소드를 외부에.. 2023. 6. 4.
[Java] 2차원 리스트 List 목차 선언 데이터 입력 데이터 및 크기 조회 [1. List의 선언] 1. 빈 리스트 선언 List list = new ArrayList(); List list = new ArrayList; 2. 물리적 크기를 정한 리스트 선언 List list = new ArrayList(10); [2. List 데이터 삽입] 1. 리스트 선언과 동시에 데이터 입력 List list = Arrays.asList( Arrays.asList(1,2,3), Arrays.asList(4,5,6), Arrays.asList(7,8,9) ); 2. 1차원 리스트 선언 후 삽입 List list = new ArrayList(); List list0 = new ArrayList(Arrays.asList(1,2,3)); List li.. 2023. 4. 6.
[Java] 1차원 리스트 List 목차 리스트란 선언 데이터 입력 데이터 삭제 데이터 및 인덱스 조회, 크기 확인 정렬 (오름차순, 내림차순) 리스트 출력 [1. List란] - 리스트는 중복을 허용하면서 저장순서를 유지하는 컬렉션(Collection)을 구현하는데 사용된다. - ArrayList : List 인터페이스를 구현하는 컬랙션 클래스 - 인덱스는 0부터 시작 [2. List의 선언] 1. 빈 리스트 선언 List list1 = new ArrayList(); List list2 = new ArrayList(); List list3 = Collections.EMPTY_LIST; 2. 물리적 크기가 정해진 빈 리스트 선언 List list = new ArrayList(10); 3. 선언과 동시에 데이터 입력 List list = n.. 2023. 4. 6.
[Java] class 클래스 [1. Class] 1. class의 정의 : 객체를 정의하기 위한 설계도 또는 틀 - 틀이 한 번 설정되면 여러개의 객체에 대한 속성과 기능을 쉽게 정의할 수 있음 2. 클래스의 장점 - 코드의 재사용성이 높음 - 코드의 관리가 용이 3. 클래스의 기능 (1) 속성 정의 : 클래스(Ex.학생명단 )별로 생성되는 인스턴스(Ex.학생)의 속성을 쉽게 정의할 수 있다. Class Student student1 student2 student3 String name; String major; int studentNum; char grade; boolean attendence; Student s1 = new Student(); s1.name = 상희; s1.major = 경제금융학부; s1.studentNum =.. 2023. 4. 3.
[C++] STL 2차원 vector 사용법 1. 2차원 벡터 선언 (1) vector를 사용하기 위해서는 헤더파일을 추가해야 한다. : #include (2) vector의 선언은 다음과 같다 : vector 벡터명; (3) vector의 행열 크기를 결정하며 선언하기 : vector 벡터명(행 길이, vector(열 길이)); //이때, 값은 0 #include #include #include using namespace std; int main() { vector V1; vector V2(3, vector(5)); } 2. 벡터 값 할당 (1) 먼저 1차원 벡터를 선언한 후 2차원 벡터에 (행마다) 삽입하기 : 2차원벡터명.push_back(1차원벡터명); (2) 이미 사이즈가 정해진 2차원 벡터에 값 채우기 : fill(벡터명[행].시작부분.. 2023. 2. 28.