본문 바로가기

Programming Language

이것이 자바다 09 * 중첩 클래스(Nested Class) : 클래스 내부에 선언한 클래스, 두 클래스의 멤버들을 서로 쉽게 접근, 복잡성 줄임 선언 위치에 따른 분류 선언 위치 설명 멤버 클래스 인스턴스 멤버 클래스 class A { class B { ... } } A 객체를 생성해야만 사용할 수 있는 B 중첩 클래스 정적 멤버 클래스 class A { static class B { ... } } A 클래스로 바로 접근 가능한 B 중첩 클래스 모든 종류의 필드와 메소드 선언 가능 로컬 클래스 class A { void method() { class B { ... } } } method()가 실행할 때만 사용할 수 있는 B 중첩 클래스 접근 제한자 및 static을 붙일 수 없음 인스턴스 필드와 메소드만 선언 가능 - 멤..
이것이 자바다 08 * 인터페이스(interface) : 객체의 사용 방법을 정의한 타입 인터페이스를 사용하는 이유? 개발 코드를 수정하지 않고, 사용하는 객체를 변경할 수 있도록 하기 위해서 * 인터페이스 선언 [public] interface 인터페이스명 { 타입 상수명 = 값; // 상수 타입 메소드명(매개변수, ...); // 추상 메소드 default 타입 메소드명(매개변수, ...) { ... } // default 메소드(인터페이스의 모든 구현 객체가 갖고 있는 기본 메소드) static 타입 메소드명(매개변수) { ... } // 정적 메소드 } 인터페이스는 상수와 메소드만을 구성 멤버로 가짐(객체로 생성할 수 없어서 생성자를 가질 수 없음) * 인터페이스 구현 개발 코드가 인터페이스 메소드를 호출하면 인터페..
이것이 자바다 07 * 상속 : 부모 클래스의 멤버를 자식 클래스에게 물려주는 것 부모 클래스에서 private 접근 제한을 갖는 필드와 메소드는 상속 대상에서 제외 부모 클래스와 자식 클래스가 다른 패키지에 존재한다면 default 접근 제한을 갖는 필드와 메소드도 상속 대상에서 제외 * 클래스 상속 프로그램에서는 자식이 부모를 선택, 다중 상속 허용 x class 자식클래스 extends 부모클래스 { // 필드 // 생성자 // 메소드 } * 부모 생성자 호출 부모 객체가 먼저 생성되고 자식 객체가 그 다음에 생성. 모든 객체는 클래스의 생성자를 호출해야만 생성됨. 부모 생성자는 자식 생성자의 맨 첫 줄에서 호출 -> super() * 메소드 재정의(@Override) 메소드 오버라이딩은 상속된 메소드의 내용이 자식 ..
이것이 자바다 06 * 객체 지향 프로그래밍(OOP : Object Oriented Programming) * 객체(Object) 물리적으로 존재하거나 추상적으로 생각할 수 있는 것 중에서 자신의 속성을 가지고 있고 다른 것과 식별 가능한 것 속성(필드)와 동작(메소드)로 구성 * 객체의 상호작용 객체의 상호작용은 객체 간의 메소드 호출을 의미하며 매개값과 리턴값을 통해 데이터를 주고 받음 리턴값 = 객체.메소드(매개값1, 매개값2, ...); * 객체 간의 관계 * 객체 지향 프로그래밍의 특징 1. 캡슐화(Encapsulation) 객체의 필드, 메소드를 하나로 묶고 실제 구현 내용을 감추는 것. 외부 객체는 객체 내부의 구조를 알지 못하며 객체가 노출해서 제공하는 필드와 메소드만 이용 가능. 자바는 캡슐화된 멤버를 노출..
이것이 자바다 04~05 - 제어문 : 조건문(if문, switch문), 반복문(for문, while문, do-while문) - if문 if (조건식1) { } else if (조건식2) { } else{ } - switch문 switch (변수) { case 값1: break; case 값2: break; default: } - for문 for (초기화식; 조건식; 증감식) { 실행문; } - while문(조건식이 true일 경우 계속 반복) while (조건식) { 실행문; } - do-while문(우선 실행한 뒤, 조건식 확인) do { 실행문; } while(조건식); - break문 : for문, switch문, while문, do-while문을 실행 중지할 때 사용 - continue문 : continue문이 실행되면..
이것이 자바다 01~03 - 자바의 특징 1) 이식성이 높다. 2) 객체 지향 언어이다.(OOP, 캡슐화, 사속, 다형성 기능 지원) 3) 함수적 스타일 코딩을 지원한다.(람다식 지원) 4) 메모리를 자동으로 관리한다. 5) 다양한 애플리케이션을 개발할 수 있다.(다양한 OS에서 사용 가능) 6) 멀티 스레드를 쉽게 구현할 수 있다. 7) 동적 로딩을 지원한다.(유지보수를 쉽고 빠르게 진행) 8) 막강한 오픈소스 라이브러리가 풍부하다. - JVM(Java Virtual Machine) - 자바 프로그램 개발 순서 - 클래스 : 필드 또는 메소드를 포함하는 블록 - 메소드 : 어떤 일을 처리하는 실행문들을 모아 놓은 블록 - 이클립스(Eclipse) : 자바 프로그램을 개발하기 위한 통합 개발 환경(IDE), 프로젝트 생성, 자동..
파이썬 기초 아주 간단하게 정리 * 출력 : print('Hello word!', 'My name is') / print(1, 2, 3)* 입력 : input() 명령어 실행 후 입력 / input('이름을 입력하세요') * 변수(Variable) : 정수형 객체에 이름표를 붙여주는 것 문자로 시작해야 함 / 숫자 안 됨 / 띄어쓰기 안 됨* 숫자형 : 정수(int), 실수(float), 서로 계산 가능* 자료형 확인 가능 함수 : type(변수)* 문자열(string) : 'Hello', "Hello" ', " 차이 """ 쓰면 여러 줄 문자열 한꺼번에 저장 (''' 도 마찬가지)* Boolean : True / False 입력하면 됨, 변수 저장 가능, print 가능 * List(자료형, 컨테이너) : 한꺼번에 값을 변경, my_..