티스토리

코딩챱챱
검색하기

블로그 홈

코딩챱챱

cochap.tistory.com/m

코챱 님의 블로그입니다.

구독자
0
방명록 방문하기

주요 글 목록

  • [Java]예외(Exception) 처리 오류(Error)가 프로그램 자체 또는 JVM 등의 원인으로 발생하는 문제를 말한다면, 예외(Exception)는 사용자의 조작이나 개발자의 코딩 실수로 발생된 문제를 말한다. 오류는 개발자가 고칠 수 없지만 예외는 대처가 가능하기 때문에, 코드를 작성할 때부터 예외 처리를 미리 해 놓는다. 오류나 예외가 발생한 경우 프로그램은 강제로 종료되는데, 예외 처리를 하면 정상적으로 프로그램 종료를 할 수 있다. 예외는 컴파일 시점에 체크 가능한 Compile Checked Exception, 실행을 해야 체크 가능한 Compile Unchecked Exception으로 분류된다. 전자는 처리가 되어야만 코드 실행이 가능하기 때문에 예외 처리에 강제성을 띤다. 여기서 처리를 하지 않으면 컴파일 에러가 발생한다... 공감수 0 댓글수 0 2022. 4. 13.
  • [Java]인터페이스(Interface)와 중첩 클래스 인터페이스를 설명하기에 앞서 final 키워드를 얘기하자면, final 키워드가 붙은 멤버는 변경이 불가능해진다. 필드는 리터럴 데이터(상수)로, 메서드는 오버라이딩 불가 상태로, 클래스는 상속 불가 상태로 바뀐다. 그리고 final 키워드를 변수 앞에 붙여 상수로 만들 수 있다. 이때 static을 함께 붙여서 상수형 변수라고 부르고, 역시 값을 변경할 수 없다. (static final 변수명) 참고로 상수명은 주로 대문자와 언더스코어(_)로만 작성한다. 인터페이스(Interface) 인터페이스는 객체와 개발자를 연결시켜주는 중간다리 역할을 한다. 클래스와 비슷하지만 클래스가 아니며, 멤버로 상수(상수형 변수)와 추상메서드만 가질 수 있다. 추상메서드가 포함되어 있고, 인터페이스 타입으로 인스턴스 생.. 공감수 0 댓글수 0 2022. 2. 26.
  • [Java]추상화(abstract)와 static, 싱글톤 추상 클래스와 추상 메서드 추상클래스(abstract class)는 말 그대로 추상적인 클래스로, 인스턴스 생성이 불가능한 클래스다. 하지만 다형성은 적용되기 때문에, 추상클래스 멤버를 여러 서브클래스에 상속시켜 공통 멤버로 쓸 때 사용한다. 추상클래스는 기존의 멤버들 외에도 추상메서드(abstract method)를 가질 수 있다. 물론 추상메서드가 없을 수도 있는데, 그런 경우에는 일반클래스와 같아서 추상클래스의 의미가 없다. 추상메서드는 구현부 없이 선언부만 있는 메서드이며, 추상클래스 내에서만 작성할 수 있다. 구현부는 추상클래스를 상속받는 서브클래스에서 오버라이딩하여 작성해야 한다. 추상메서드는 구현되어야만 사용할 수 있는 강제성을 띄기 때문에, 서브클래스에서 구현을 하지 않으면 그 서브클래스도.. 공감수 0 댓글수 0 2022. 2. 23.
  • [Java]상속과 참조 형 변환, 다형성 상속(Inheritance) 객체 지향 프로그래밍(OOP)의 특징 중 상속(Inheritance)은 기존 클래스의 멤버들을 다른 클래스가 물려받아 사용할 수 있게 하는 것이다. 단순히 한 클래스에서 다른 클래스의 인스턴스를 생성하여 사용하는 것은 has-a 관계이고, 상속을 받게 되면 is-a 관계가 된다. 상위 클래스는 슈퍼 클래스나 부모 클래스로, 하위 클래스는 서브 클래스나 자식 클래스로도 불린다. 서브 클래스는 하나의 슈퍼 클래스만(단일 상속) 가질 수 있지만 슈퍼 클래스는 여러 서브 클래스를 가질 수 있으며, 서브 클래스는 슈퍼 클래스 내에서 private이 붙은 필드, 메서드와 생성자를 제외한 모든 멤버에 접근 가능하다. 만약 아무 클래스도 상속받지 않으면 자동으로 최상위 클래스(Object).. 공감수 0 댓글수 0 2022. 2. 7.
  • [Java]생성자와 패키지, 접근제한자 생성자(Constructor) java에서 생성자는 메서드와 매우 비슷하게 생겼지만 역할은 다르다. 주로 필드(멤버변수)를 초기화하는 데 사용되며, 생성자의 이름은 클래스명과 같아야 한다. 작성은 메서드 작성법에서 리턴타입 부분이 완전히 빠져있는, 접근제한자 생성자(매개변수) { 코드 } 형식으로 이루어진다. 클래스를 처음 정의할 때 생성자를 따로 만들지 않으면 컴파일러가 자동으로 기본 생성자(매개변수X)를 만들어주지만 매개변수 유무와 관계없이 생성자를 따로 정의하면, 기본 생성자는 만들어지지 않는다. main 클래스에서 인스턴스 생성 시 작성하는, 클래스명 변수명 = new 클래스명(); 에서 마지막 부분이 생성자이기 때문에, 생성자는 인스턴스를 호출하면서 무조건 한 번 호출되고, 한 번만 호출된다. .. 공감수 0 댓글수 0 2022. 1. 26.
  • [Java]OOP - 클래스와 메서드 객체 지향 프로그래밍(OOP) java의 가장 큰 특징은 객체 지향 프로그래밍(Object-Oriented-Programming) 언어라는 점이다. 절차 지향 프로그래밍(Procedure-Oriented-Programming)과 다르게 OOP는 여러 객체를 조합해서 프로그램을 만드는 기법으로, 객체가 중심이 된다. 처리를 객체 단위로 하게 되면 코드 재사용성이 높고 유지보수가 쉬워, 대규모 프로젝트에 적합하다. 대신 상대적으로 처리가 느리고, 객체가 늘어날수록 용량도 늘어나며 설계부터 시간이 걸린다는 단점이 있다. OOP의 특징으로는 A(Abstraction;추상화), P(Polymorphism;다형성), I(Inheritance;상속성), E(Encapsulation;캡슐화)가 있는데, 이에 대해서는 .. 공감수 0 댓글수 0 2022. 1. 23.
  • [Java]배열 먼저 JVM(자바 가상 머신)에는 method(메서드) 영역, heap(힙) 영역, stack(스택) 영역이 있다. method 영역에는 클래스에 대한 정보가, heap 영역에는 참조 데이터 타입의 데이터가, stack 영역은 메서드 호출 시 관계되는 변수가 저장된다. 이 stack 영역에서는 메서드가 호출될 때 메모리 공간을 제공했다가 메서드가 종료되면 회수한다. 그리고 배열(Array)은 참조 타입이기 때문에 heap 영역 메모리로 저장된다. 배열 java에서 배열은 데이터 타입이 상관없는 JS와 달리, 동일한 데이터 타입 변수들의 집합체다. 메모리 상에서 연속된 공간에 생성되며, 생성 후에는 배열 크기를 바꿀 수 없다. 인덱스 번호는 똑같이 0에서 시작하지만, JS와 다르게 없는 인덱스 호출 시에는.. 공감수 0 댓글수 0 2022. 1. 14.
  • [Java]연산자와 제어문 연산자 Java와 JavaScript는 비슷한 부분이 꽤 있어서, JS에서 다뤘던 연산자들이 Java에도 거의 똑같이 있다. 산술, 대입(복합 대입), 증감, 비교, 논리, 삼항 조건 연산자가 있다는 점은 같으면서 세부적으로 조금씩 다르긴 하다. 산술 연산자(+, -, *, /, %) 중 %가 나눗셈 결과에서 나머지를 뜻하는 건 JS와 같지만, Java에서 /는 나눗셈 결과 중 몫만을 말한다. 즉, 실수가 아니라 정수가 결과로 도출된다. 더불어 Java의 산술 연산 시에는 자동 형 변환이 일어나기 때문에, int 이하의 타입들은 int로, 그 외에는 큰 타입 쪽으로 변환된다. 대입 연산자(=)와 복합 대입 연산자(+=, -=, *=, /=, %=)는 우변 값을 좌변에 계산하여 대입한다는 의미로, JS에서.. 공감수 0 댓글수 0 2022. 1. 11.
  • [Java]자료형과 변수, 형 변환 자료형(Data type) Java에서 사용하는 데이터들은 타입에 따라 정수형, 실수형, 문자형, 논리형 등으로 나뉜다. java의 기본 데이터 타입은 정수형 4가지, 실수형 2가지와 문자형, 논리형 1가지씩으로 총 8가지가 있고, 이를 제외한 나머지 데이터 타입은 모두 기본형이 아닌 참조형이다. 정수형 소수점이 없는 숫자 데이터의 타입으로 byte(1바이트), short(2바이트), int(4바이트), long(8바이트)이 있다. 정수형 데이터에 별도 표시(접두사)가 없을 경우 10진수 취급된다. 2진수 표기법 : 숫자 앞에 접두사 0b 를 붙이고, 0과 1 외에는 표기가 불가능하다. 8진수 표기법 : 숫자 앞에 접두사 0 을 붙이고, 0~7 외에는 표기 불가능하다. 16진수 표기법 : 숫자 앞에 접두.. 공감수 0 댓글수 0 2022. 1. 4.
  • 자바(Java) Java는 파이썬, C언어들과 함께 가장 대표적인 프로그래밍 언어다. 세 가지 중 C언어는 공장 기계 구동 같은 부분에 많이 사용되고, 파이썬은 최근 들어서 각광받기 시작한 언어다. Java가 현시점에서 제일 보편적으로 사용되고 있기 때문에 나는 Java를 먼저 배우기로 했다. Java는 서버 연동은 하지 않지만 HTML과 다른 환경이 필요하기 때문에, Java 수업용 이클립스를 켜고 화면 오른쪽 상단에 Open Perspective를 눌러 아래 화면처럼 Java로 바꿔준다. 퍼스펙티브 설정이 끝나고 나면 이클립스 화면 왼쪽에 보이는 부분이 Package Explorer 뷰인데, 뷰 안의 하얀 곳에 대고 마우스 우클릭 - New - Java Project를 하면 아래 화면과 같이 나온다. 프로젝트명은 원.. 공감수 0 댓글수 0 2022. 1. 2.
    문의안내
    • 티스토리
    • 로그인
    • 고객센터

    티스토리는 카카오에서 사랑을 담아 만듭니다.

    © Kakao Corp.