Life is Good

수콩이의 시선

Coding 52

함수 중복(오버로딩 Overloading)&(오버라이딩 Overriding), 객체 배열

생성자와 함수와의 차이점 - 생성자는 리턴타입이 없고 클래스 이름과 동일하다. - 함수이름은 같지 않아도 상관없다. (실무에서는 코드가 복잡하기 때문에 비슷한 기능을 하는 함수는 이름을 같게 해준다. ) 함수중복 - Overload / Overloading 조건 1) 함수명은 같지만 2) 파라미터(매개변수)의 타입이나 개수가 달라야 한다. 오버로딩(Overloading) : 같은 이름의 메서드 여러개를 가지면서 매개변수의 유형과 개수가 다르도록 하는 기술 오버라이딩(Overriding) : 상위 클래스가 가지고 있는 메서드를 하위 클래스가 재정의해서 사용 오버로딩(Overloading) 같은 이름의 함수(메서드)를 여러개 정의하고, 매개변수의 유형과 개수를 다르게 하여 다양한 유형의 호출에 응답할 수 있..

Coding/JAVA 2022.04.04

접근제한자(public, private) / 생성자

클래스의 3대 특징 은닉화 함수중복 상속성 private 는 내 소스 밖에서는 사용할 수 없다. 함수는 private를 쓰지 않는다. 대부분 public으로 선언해 사용한다. 변수는 private 로 선언해도 함수를 통해서 사용이 가능하다. 그래서 변수는 private를 사용한다. 하나의 클래스는 1개의 자바 파일로 작성하지만, 여기서는 설명을 편하게 하기 위해 하나의 파일에 작성해서 사용하겠다. 하나의 자바 파일에서 여러 개의 클래스를 작성할 때는 한 개의 메인클래스만 public으로 하고, 나머지는 public선언을 빼줘야한다. 생성자에서 다른 생성자를 호출할 때에는 다음과 같이 this() 코드를 사용한다. this는 생략이 가능하다. 그렇지만 이 경우에는 멤버변수와 지역변수가 동일한 변수명이기 때..

Coding/JAVA 2022.04.04

배열(Array)과 클래스(Class)

배열 변수는 한 개의 데이터만 저장하지만, 배열은 같은 타입의 데이터를 연속된 공간에 저장하므로 속도면에서 좋다. 각 데이터는 인덱스를 부여한다. 배열은 생성 시 0으로 초기화된다. 빨간(스택영역), 파란색(힙영역) b는 array의 주소값을 가지게 된다. 이는 메모리 공간을 절약 하게 된다. ( 만약, 주소값을 참조하지 않는다면 메모리 공간을 차지해서 array 20byte + b 20btye = 40byte 가 필요하게 되지만 b가 주소값을 가지면 array 20 byte + b 1byte = 21btye) 주소값을 가지고 heap영역에서 해당 주소값을 찾아가서 값을 가져온다. 배열 = null; 쓰지 않아도 상관없다. C나 C++은 가비지 컬렉션이 없기때문에, 개발자가 메모리 해제 해줘야한다. 이때..

Coding/JAVA 2022.04.04

제어문(조건문 if문, switch문 / 반복문 for문, while문)

조건문(if, if-else, if-else if, switch~case) if문 switch문 if문은 조건을 체크하고 수행하고 빠져나오는 한편, switch문은 해당 케이스문 이후로 실행이 된다. 즉, break 를 사용해서 빠져나와야한다. 반복문 for문, while문) for문 레코드 단위로 읽어올때는 자바에서는 for문보다 while문을 많이 사용한다. for문은 수치반복, while문은 행위반복(행이나 레코드단위) [기타] 배열은 추가, 삭제가 안된다는 단점이 있다. 이를 보완한 것이 ArrayList. 객체지향 언어의 데이터 단위는 레코드(하나의 행). C는 정수형, 실수형. 레코드 기반의 언어들은 for문이나 while문을 잘 쓰지 않는다. while 문 do while 문 do while..

Coding/JAVA 2022.04.04

자바기본문법

자바 언어의 특징 1. 운영체제에 독립적이다. : 자바가상머신(JVM)을 통해서 가능한데, 자바 응용프로그램은 운영체제나 하드웨어가 아닌 JVM하고만 통신하고 JVM아 자바 응용프로그램으로부터 전달받은 명령을 해당 운영체제가 이해할 수 있도록 변환하여 전달한다. 2. 객체지향언어이다. : 객체지향 프로그래밍 언어 중의 하나로 객체지향 개념의 특징인 상속, 캡슐화, 다형성이 잘 적용된 순수한 객체지향언어이다. 재사용성과 유지보수의 용이성 등 많은 장점을 가지고 있다. 3. 자동 메모리관리(Garbage Collection) : 자바로 작성된 프로그램이 실행되면, 가비지컬렉터가 자동적으로 메모리를 관리해주기 때문에 프로그래머는 메모리를 따로 관리하지 않아도 된다. 4. 네트워크와 분산처리를 지원한다. : 다..

Coding/JAVA 2022.04.04

[AJAX] Kakao 지도 Javscript API 이용해서 지도그리기

kakao developers 사이트(https://developers.kakao.com/) 에서 카카오아이디로 로그인 한 후 내 애플리케이션에서 추가해준다. Kakao Developers 카카오 API를 활용하여 다양한 어플리케이션을 개발해보세요. 카카오 로그인, 메시지 보내기, 친구 API, 인공지능 API 등을 제공합니다. developers.kakao.com 앱이름과 회사명을 적고, 플랫폼으로 Web로컬주소(ex. http://localhost:8181)로 설정해주고, 앱 키(네이티브 앱 키, REST API 키, JavaScript 키, Admin 키)가 설정된것을 볼 수 있다. 키 값 정보 뒷부분은 지웠음 이렇게 생성한 키는 API를 사용할 때 필요하다. 프로젝트 폴더 생성한 파일들 지도 그려..

Coding/JAVASCRIPT 2022.04.04