[JAVA] 예외란?(Exception)
·
❤️ JAVA/Basic
📚 예외처리(Exception)1. 예외(Exception)와 오류(Error)프로그램 에러 또는 오류는 발생시점에 따라 '컴파일 에러'와 '런타임 에러'로 나뉘어진다.'컴파일 에러' 컴파일 할 때 발생하는 에러'런타임 에러' 프로그램의 실행도중에 발생하는 에러'논리적 에러' 실행은 되지만, 의도와 다르게 동작하는 것 런타임 에러 방지를 위해, 자바는 실행시 발생할 수 있는 프로그램 오류를 '에러'와 '예외' 두가지로 구분한다.오류(Error) : 프로그램 코드에 의해서 수습될 수 없는 심각한 오류예외(Exception)  : 프로그램 코드에 의해서 수습될 수 있는 다소 미약한 오류 2. 예외 클래스의 계층구조모든 클래스의 조상은 Object클래스이므로 Exception과 Error클래스 역시 Obje..
[JAVA] this와 this()
·
❤️ JAVA/Basic
📚 this,this()1. this : 객체 자신을 가리키는 참조변수this는 인스턴스 자신을 가리키는 참조변수이다.메소드 내에서만 사용되고 static 메소드에서는 사용이 불가능하다.멤버 변수를 가리킬 때는 매개변수와 구분하기 위해 this.멤버변수 형식으로 사용한다. Car(String c, String g, int d){ color = c; gearType = g; door = d;}이 코드를 봤을 때 'color = c;'는 생성자의 매개변수로 선언된 지역변수 c의 값을 인스턴스변수 color에 저장한다.이 때 변수 color와 c는 이름만으로도 서로 구별되므로 아무 문제가 없다.Car(String color, String geerType, int door){ this.color = c..
[JAVA] super와 super()
·
❤️ JAVA/Basic
📚 super와 super()1. super : 자신이 상속받은 부모를 가리키는 참조 변수super는 부모 클래스로부터 상속받은 필드나 메소드를 자식 클래스에서 참조하는 데 사용하는 참조 변수이다.자식과 부모사이의 구분이 있어야하는데, 멤버변수와 지역변수의 이름이 같을 때 this를 붙여서 구별한다.이와 같이 상속받은 자식 멤버와 부모의 멤버가 이름이 같을 때 super를 붙여서 구분할 수 있다. 또한 static메서드(class 메서드)는 인스턴스와 전혀 관련이 없다, 그렇기에 this와 마찬가지로 super 역시 static메서드에서는 사용 할 수 없고 인스턴스 메서드에서만 사용 할 수 있다.조상 클래스에 선언된 멤버 변수와 같은 이름의 멤버 변수를 자손 클래스에서 중복해서 정의하는 것이 가능하며 ..
[JAVA] 상속(Inheritance)
·
❤️ JAVA/Basic
📚 상속(Inherihance)1. 상속이란?상속(Inherihance)이란 클래스에 기능을 추가하거나 재정의하여 새로운 클래스를 정의하는 것을 의미한다.상속을 이용하면, 기존 정의된 클래스의 모든 필드와 메소드를 물려받아, 새로운 클래스를 생성 할 수 있다.이때 기존에 정의되어 있던 클래스를 부모 클래스(parent class) 또는 상위 클래스(super class)라고 한다.그리고 상속을 통해 새롭게 작성되는 클래스를 자식 클래스(child class)라고 한다. 상속의 사용상속을 구현하는 방법은 간단하다.새로 작성하고자 하는 클래스의 이름 뒤에 상속 받고자 하는 클래스의 이름을 키워드 'extends'와 함께 써주기만 하면 된다.class Parent { }class Child extends P..
[JAVA] 제어자(modifier)
·
❤️ JAVA/Basic
📚 제어자(modifier)1. 제어자란?제어자(modifier)란 클래스와 클래스 멤버의 선언 시 사용하여 부가적인 의미를 부여하는 키워드를 의미한다.자바에서 제어자는 접근 제어자, 비접근 제어자, 기타 제어자로 나뉜다.접근 제어자 : public, protected, default, private                    - 한 번에 네 가지 중 하나만 선택해서 사용 가능그            외 : static, final, abstract, native, transient, synchronized, volatile, strictfp                     - 한 번에 여러 제어자를 같이 사용 가능 2. 접근 제어자접근 제어자는 말 그대로 접근을 제어하기 위해 사용된다.객체..
[JAVA] 생성자(consructor)
·
❤️ JAVA/Basic
📚 생성자(constructor)1.  생성자란?생성자는 인스턴스가 생성될 때 호출되는 '*인스턴스 초기화 메서드'이다.설명대로 인스턴스 변수를 초기화 할때 주로 사용되며, 인스턴스 생성 시 실행되어야 할 작업을 위해서도 사용된다. *인스턴스 초기화 : 인스턴스 변수들을 초기화 하는 것 생성자 조건과 정의생성자는 클래스 내에 선언되며, 메서드의 구조와 유사하다.클래스이름(타입 변수명, 타입 변수명, ...){ // 인스턴스 생성시 수행될 코드, // 주로 인스턴스 변수의 초기화 코드를 적는다.}생성자의 이름은 클래스의 이름과 같아야 한다.생성자는 리턴 값이 없다.생성자 앞에 리턴값이 없음을 뜻하는 키워드 void를 사용하지 않음, 아무것도 적지 않는다.생성자는 new를 통해 객체를 생성할 때, 객체당 ..
[JAVA] 필드(Field)와 메서드(method)
·
❤️ JAVA/Basic
필드(Field)란?필드는 객체의 속성, '클래스에 포함된 변수'를 가르킨다. 변수의 선언된 위치에 따라 변수의 종류가 달라지므로, 변수의 종류를 파악하기 위해서는 변수가 어느 영역에 선언되었는지 확인하는 것이 중요하다. 그렇다면 클래스에 포함된 변수(=필드)와 일반 변수의 차이는 무엇일까?필드는 생성자와 메소드 전체에서 사용되며, 객체가 소멸되지 않는 한 객체와 함께 존재한다.변수는 생성자와 메소드 내에서만 사용되고, 생성자와 메소드가 실행 종료되면 자동 소멸된다.   변수의 종류변수의 종류선언 위치생성시기클래스 변수(class variable)클래스 영역클래스가 메모리에 올라갈 때인스턴스 변수(instance variable)인스턴스가 생성되었을 때지역 변수(local variable)클래스 영역 이..
[JAVA] 객체 지향 프로그래밍(OOP)과 클래스
·
❤️ JAVA/Basic
객체 지향 프로그래밍(OOP)는 자바에서 기본적으로 다루는 중요한 개념이다.객체 지향에서는 클래스를 중심으로 프로그램을 설계하며, 클래스는 객체를 만들기 위한 설계도 역할을 한다.클래스가 무엇인지, 객체 지향 프로그래밍에서 클래스의 역할은 무엇인지, 그리고 객체 지향의 기본 개념들에 대해 정리해보자.객체 지향 프로그래밍이란?객체 지향 프로그래밍(OOP, Object-Oriented Programming)은 컴퓨터 프로그래밍 패러다임중 하나로, 프로그래밍에서 필요한 데이터를 *추상화시켜 상태와 행위를 가진 객체를 만들고 그 객체들 간의 유기적인 상호작용을 통해 로직을 구성하는 프로그래밍 방법이다.*추상화 : 복잡한 자료, 모듈, 시스템 등으로부터 핵심적인 개념 또는 기능을 간추려 내는 것 예를 들어, 주변..