Programming language
-
처음 자바를 접하면 자바와 자바스크립트를 비슷한 언어라고 생각할 수도 있다. 그도 그럴 것이 자바와 자바스크립트는 이름이 매우 유사해 자바스크립트가 왠지 자바에서 유래된 언어처럼 보인다. 결론만 말하면 자바와 자바스크립트는 다른 언어이다. 자바와 자바스크립트의 차이는 인도와 인도네시아의 차이라는 비유는 상당히 인상깊었다. 자바(JAVA) 자바는 OOP(Object Orienter Programming) 프로그래밍의 대표적인 언어로 클래스 기반의 객체지향 언어이다. 자바는 이식성이 좋아 운영체제의 종류에 관계없이 대부분의 시스템에서 실행이 가능하다. 왜냐하면 JVM이라는 가상머신을 이용하기 때문이다. ☞ JVM에 대해서 자바는 정적 형지정, 변수 자료형이 반드시 선언되어야하며 컴파일 과정을 거친다.(소스 ..
자바와 자바스크립트의 차이 2018. 8. 22. -
int와 Integer흔히 사용하는 int는 원시 자료형(프로그래밍 언어가 제공하는 자료형)이다.예를 들면 int, char, float, double 등과 같은. Integer는 Wrapper Class이다.Wrapper 클래스란 자바 기본형을 클래스화 시킨 것으로 기본 데이터형을 값이 아닌 객체로 사용할 수 있는 방법을 제공한다.아래 표는 Wrapper Class의 종류이다. 기본 데이터형Wrapper Class byte Byte short Short int Integer long Long float Float double Double char Character boolean Boolean void Void 참고로 Wrapper Class의 메소드 중 parse로 시작하는 메소드는 객체형이 아닌 기본..
[Java]int와 Integer의 차이 2018. 8. 22. -
DOM(Document Object Model)DOM은 Document Object Model의 약자로 번역 그대로 문서 객체 모형으로 해석이 가능하다. W3SCHOOLS의 말을 빌려보면 DOM은 W3C (World Wide Web Consortium) 표준으로서 프로그램 및 스크립트가 문서의 내용, 구조 및 스타일을 동적으로 액세스하고 업데이트 할 수있게 해주는 플랫폼 및 언어 중립적 인터페이스이다. 쉽게 DOM은 우리가 HTML 요소를 제어할 수 있게 방법을 제공해준다고 생각하면 된다. 그리고 자바스크립트와 같은 스크립팅 언어를 통해 접근하고 조작한다.오해하면 안되는 것은 DOM은 자바스크립트에서 정의한 것이 아닌 W3C 표준이라는 것이다. DOM은 아래와 같이 트리 형태의 자료 구조를 가진다.요소가..
DOM(Document Object Model) 2018. 8. 21. -
오늘은 자바의 예외처리 try catch finally문에 대해 정리를 해보려고 합니다. try catch finally 우리가 사용하는 프로그램은 수행 중 예상치 못한 상황에 맞닥뜨릴 수 있습니다. 이를 오류(Error)라고 하는반면 예상을 할 수 있는 상황이 있는데 이를 예외(Exception)라고 합니다. 예외가 발생하면 프로그램은 비정상 종료됩니다. 따라서 예외 처리를 해주어 프로그램이 비정상 종료되는 것을 미연에 방지해주는 것이 좋습니다. 자바에서는 예외가 발생하면 JVM(자바가상머신)이 관련 예외 클래스에서 예외 객체를 생성해 넘겨줍니다. 우리는 JVM으로부터 받은 예외 객체를 try catch finally로 잡아주면 됩니다. 결론적으로 try catch finally는 자바의 예외처리를 핸..
[Java]try catch finally 2018. 8. 17. -
Split() Split 함수는 문자열을 특정 문자를 기준으로 구분하여 배열 안에 담아줍니다. 아래는 페이지 내에서 Split 함수를 사용한 예제입니다. cast라는 문자열은 ';(세미콜론)'에 의해 구분되어 배열 weather에 입력됩니다. 그리고 배열 인덱스 0번 자리부터 순서대로 입력해주었습니다. 오늘의 날씨 버튼을 클릭하면 결과를 확인할 수 있습니다. 오늘의 날씨 + 피드백은 언제나 환영입니다 :)
[Java]Split 함수 2018. 8. 13. -
자바의 장점은 OS에 영향을 받지 않는다는 것이 아닐까 생각한다.자바로 작성된 프로그램은 JVM만 있다면 실행이 가능하다. JVM(Java Virtual Machine)JVM이란 Java Virtual Machine(자바 가상 머신)의 약자로 자바와 OS 사이의 중계자 역할을 한다.JVM은 자바 바이트 코드(Byte Code)를 OS에 맞게 해석해준다. 이것이 자바가 OS로부터 독립적이고 JVM에 종속적이게 되는 이유이다.(바이트 코드는 기계어가 아니기 때문에 OS에서 바로 실행되지 않고 JVM이 OS가 바이트 코드를 이해할 수 있도록 해석해 주는 것이다) JVM의 메모리 구조는 아래와 같다. ① Javac(Java compiler) : 프로그램이 실행되면 Javac(Java compiler)는 ja..
[Java]JVM 메모리 구조 2018. 8. 12. -
인스턴스 처음에 객체와 인스턴스에 사이에서 혼란을 겪은 적이 있다. 객체는 인스턴스를 포함하며 객체지향 프로그래밍에서는 비슷한 의미로 사용되지만 두 단어는 분명 차이가 있다. 우선 클래스 타입으로 선언되었을 때를 객체라고 하며, 클래스가 실체화되었을 때 인스턴스라고 말한다. 내 생각에 객체와 인스턴스의 가장 큰 차이는 메모리에 할당 되느냐 안되느냐의 차이인 것 같다. 코드를 보자. 먼저 Cafe 클래스에는 두 변수와 메소드가 정의되어 있다. 1 2 3 4 5 6 7 8 9 10 11 12 package biz.test; public class Cafe{ String drink; // 음료 int pay; // 가격 public void Americano(){ drink = "Americano"; Syst..
[Java]인스턴스(Instance) 2018. 8. 9. -
개발을 하다보면 이런 에러를 마주할 때가 있을 것입니다. java.lang.ArrayIndexOutOfBoundsException 오류를 잡는 법은 에러 아래 줄을 따라 해당 소스의 라인을 찾아가면 되는데 근본적인 원인은 배열 인덱스와 관련이 있습니다. 쉽게 말해 프로그램이 배열 인덱스보다 큰 요소에 접근하게 될 때 이런 오류가 발생합니다. 예를 들어 배열을 박스라고 생각해보겠습니다. 이 박스의 공간은 세 개라고 정의합니다. 이 각각의 공간은 배열의 요소라고 불립니다. 이처럼 공간이 정의된 배열을 생성하면 배열의 요소는 기본값을 갖습니다.(int는 0, String은 null) 배열의 인덱스는 배열의 요소를 구분하는 일련번호라고 생각하면 됩니다. ※배열의 인덱스는 0부터 시작합니다. 이제 그럼 박스 안에..
[Error]java.lang.ArrayIndexOutOfBoundsException 2018. 8. 9.