728x90

프로그래밍 4

7. Static

Static의 이해 필요에 의해 class를 만들고, 생성자를 통해 객체로 만들어서 사용을 했다. 이러한 방식으로 모든걸 처리하면 다음과 같은 문제가 생긴다. 예시를 살펴보자. 아빠 지갑(class)에 200원이 있다. 아이들이 100원을 달라고 할때 100원의 아빠지갑 객체가 형성된다고 하자. 세명의 아이들이 100원을 받는다면 3개의 객체가 생긴다. 프로그래밍의 입장에선 클래스에선 무한한 객체 생성이 가능하고, 각 객체는 독립적이므로 실행이 가능한 경우가 된다. 하지만 현실세계에선 200원밖에 없는데 300원을 준것이므로 불가능한 경우이다. 이를 해결하는 방법은 아빠 지갑 객체가 세 아이들 모두에게 '공유'되면 된다 그렇다면 세번째로 돈을 받아간 아니는 100원을 받지 않고, 오류없이 동작한다. 이를..

Programming/Java 2021.01.03

6. 패키지 및 접근제한

패키지의 이해 패키지란? 자바에는 수많은 .java파일(class)이 존재한다. 이러한 많은 파일의 효율적 관리를 위해 자바는 패키지라는 구조를 사용한다. 즉, 패키지란 수많은 관련 class들을 그룹지어 관리하는 폴더라고 볼 수 있다. 패키지 설계 상식 패키지 이름을 정할 때, 이름은 유일한 이름일수록 좋다. 다른 패키지와 겹치면 안좋기 때문이다. 우리 회사에서 만든 소스를 다른곳으로 이식하려 할 때 이름이 중복되면 좋지 않기 때문이다. Import의 이해 다른 패키지의 클래스를 가져올땐 import를 사용한다. 서로 다른 클래스를 사용하려 할때는 반드시 import해줘야한다. 이클립스는 자동으로 import해주기 때문에 번거로울것은 없다. //예시 //import로 클래스 가져오기 import com..

Programming/Java 2021.01.03

4. 객체지향 프로그래밍

객체지향 이전의 프로그래밍 절차지향 프로그래밍 절차지향 프로그래밍은 코딩한대로 위에서 아래로 순차적으로 쭉 실행된다. 절차지향의 단점 - 비효율적인 부분이 존재한다. 1) 값이 변경되는 경우엔 동일한 작업이지만 매번 소스코드를 수정해야한다. 2) 기존의 로직을 다시 사용할때 다시 코딩하거나 기존코드를 카피해 재사용하는 방식이나 모두 비효율적이다. 3) 2)의 방법은 동일한 로직의 코드가 반복되어 코드의 양이 길어지고 유지보수가 어려워진다. 메소드의 이해 이를 위해 등장한 방식이 함수 or 메소드이다. 로직만 만들어놓고, 사용할 때 소스(데이터)를 주면 메소드가 알아서 결과값을 반환하는 방식이다. 예시를 통해 메소드에 대해 이해해보자. /*자바의 메소드는 접근제한자 - 반환type - 메소드명(input ..

Programming/Java 2021.01.03

1. Java란

초보 개-발자의 자바공부 스타트! 1) Java 언어의 특징 - Virstual Machine 운영체제(윈도우, 리눅스, 맥OS 등)의 영향 받지 않는다. 즉 프로그래밍 해놓고 각 OS에 맞는 Virtual Machine만 있다면 실행 가능하다는것. - Garbage Collection 메모리 관리에 용이한편. 사용하지 않는 메모리 회수, 할당이 Garbage collector에 의해 이뤄지기 때문에 메모리 관리가 용이한 장점이 있다. - Object Oriented Program(OOP) 객체지향 언어로 개발과 유지보수를 효율적으로 진행할 수 있음! 2) 자바 개발 환경설정 - JDK(Java Development Kit) : Java 개발 키트. - IDE(Integrated Development E..

Programming/Java 2020.12.29
728x90