java.lang 패키지는 무엇이며, 무엇을 제공할까? java.lang 패키지 --자바 프로그래밍을 할 때다른 패키지에 존재하는 클래스를 가져다 사용하기 위해서는"import" 키워드를 사용하여 사용하고 싶은 클래스가 위치하는 패키지를 불러와서 사용할 수 있지만 java.lang 패키지는자바 언어에서 가장 기본적이고 필수적인 클래스와 인터페이스들을 제공하는 패키지로,별도로 "import" 키워드를 사용하지 않아도 바로 사용할 수 있도록 설계되어 있다.-- java.lang 패키지에 포함된 주요 클래스와 기능 --1. Object 클래스모든 Java 클래스의 "최상위 부모 클래스"로, 클래스를 통해 생성한 객체에 사용할 수 있는 기본적인 메서드를 제공한다. 주요 메서드toString() ..
Language

예외 처리는 어떻게 할까? 프로그램 오류 --오류 종류컴파일 에러 : 컴파일 시 발생하는 에러런타임 에러 : 실행 시 발생하는 에러논리적 에러 : 실행은 되지만, 의도와 다르게 동작하는 상황 런타임 에러의 종류에러 (Error) : 프로그램 코드에 의해 수습이 불가능한 오류예외 (Exception) : 프로그램 코드에 의해 수습이 가능한 오류 예외 클래스의 계층 구조에러와 예외 역시 최종 부모 클래스가 Object 클래스다. 위 그림처럼예외 클래스는 두 그룹으로 나눌 수 있다.Exception 클래스와 해당 자식 클래스들RuntimeException 클래스와 해당 자식 클래스들-- 예외 처리 ( try-catch, try-catch-finally문 ) --오류가 아..
내부 클래스와 익명 클래스는 무엇이고 어떻게 사용할까? 내부 클래스 (Inner Class) --내부 클래스는클래스 내부에 선언된 클래스를 의미한다. 내부 클래스를 감싸고 있는 (겉에 있는) 클래스를 "외부 클래스"라고 부른다. 내부 클래스 종류인스턴스 내부 클래스static 내부 클래스지역 내부 클래스익명 내부 클래스 class OuterClass { private String message = "Hello from OuterClass"; // 인스턴스 내부 클래스 class InnerClass { public void displayMessage() { System.out.println(message); // 외부 클래스의 멤버에 접근 가능 ..
인터페이스는 무엇일까? 인터페이스 (Interface) --인터페이스는클래스가 구현해야 할 메서드의 집합을 정의하는 일종의 추상적인 틀이다. 추상 클래스처럼 추상 메서드를 가지고 있지만추상 클래스보다 추상화 정도가 높아서추상 크래스와 달리 몸통을 갖춘(구현된) 일반 메서드나 멤버변수를 구성원으로 가질 수 없다.오직 "추상 메서드"와 "상수"만을 멤버로 가진 틀이다. 추상 클래스는일반 클래스에 추상 메서드가 하나라도 있는 경우를 의미하고인터페이스는구성원이 전부 추상 메서드나 상수로 이루어진 경우를 의미한다. 인터페이스 기본 형식interface 인터페이스명 { 추상 메서드 or 상수}interface Test { public static final double PI = 3.14; //..

다형성은 무엇이며, 어떻게 사용할까? 다형성 (Polymorphism) --다형성은하나의 객체가 여러 가지 형태를 가질 수 있는 성질을 의미한다.즉, 한 타입의 참조변수로 여러 타입의 객체를 참조할 수 있도록 하는 것이다. 부모클래스 타입의 참조변수로 자식클래스의 인스턴스를 참조하는 것이다. 부모클래스명 객체명 = new 자식클래스생성자();class Parent { ... }class Child extends Parent { ... }Parent op = new Child(); // 부모타입의 참조변수로 자식 인스턴스를 참조 다형성을 이용하면해당 객체의 구성은 부모타입(부모클래스)으로 이루어져 있으며내용(데이터)은 자식 객체를 참조하는 것으로 간단하게 구성은 부모 클래스고, 데이터는 자식 클..

제어자는 어떤 것들이 있으며, 어떻게 사용할까? 제어자 (Modifier) --제어자는클래스, 변수, 메서드 등에 특정한 동작인 속성을 부여하는 키워드로 부가적인 의미를 추가적으로 부여한다. 제어자 종류접근 제어자 (Access Modifiers)기타 제어자 (Non-Access Modifiers)-- 접근 제어자 (Access Modifiers) --접근 제어자는클래스, 변수, 메서드에 대한 접근에 대한 제한을 설정하는 키워드다. 접근 제어자 종류public : 접근 제한없이 어디서든 접근 가능protected : 같은 패키지 내의 클래스 or 다른 패키지의 자식 클래스에서 접근 가능default (기본값) : 같은 ..

package와 import는 무엇일까? 패키지 (Package) --패키지는클래스 또는 인터페이스들을 논리적으로 그룹화한 것을 의미한다. 정리하자면클래스는 물리적으로 하나의 클래스 파일(.class)이고패키지는 물리적으로 하나의 디렉터리다. 서로 관련된 클래스들끼리 그룹 단위로 묶어 패키지에 담으면클래스들을 효율적으로 관리할 수 있다. 규칙모든 클래스는 반드시 하나의 패키지에 속해야 한다.하나의 소스파일(.class 파일)에는 맨 첫 문장으로 단 한 번의 패키지 선언만을 허용한다. (반드시 최상단에 정의)같은 패키지 안에서는 동일한 이름의 클래스파일이 존재하면 안 된다. (서로 다른 패키지라면 상관 X)패키지는 점(.)을 구분자로 사용하여 계층구조로 구성한다. 패키지 선언 형식packag..
변수와 메서드는 무엇이며 어떻게 사용할까? 선언 위치에 따른 변수의 종류 --자바에서는 선언 위치에 따라 변수의 종류가 달라진다. 변수의 종류클래스 변수 (Static 변수)인스턴스 변수지역 변수참고 : [변수] 변수와 상수 (+ 타입, 진법, 형변환) 인스턴스 변수는클래스 내부에 선언된 변수를 가리키며해당 클래스를 통해 객체를 생성하여 (힙)메모리에 저장될 때 인스턴스 변수가 생성된다.정확하게는그냥 클래스 내부에 선언된 변수를 "인스턴스 변수"라고 부르는 것이 아니라해당 클래스로 객체를 생성하여 객체가 메모리에 저장될 때메모리에 저장된 변수를 "인스턴스 변수"라고 부른다.간단하게는객체에 저장된 변수를 "인스턴스 변수"라고 부르면 된다.(객체는 메모리에 저장되어 있으며 그 안에 존재하는 변수도..