목록2024/09 (23)
블로그 이름 뭐하지
타입을 일반화하는 것.클래스 내부에서 개별적으로 타입을 지정하지 않고,외부(인스턴스 생성 시, 메서드 호출 시)에서 타입을 지정한다.class MyArray{ int element; void setElement(int element) { this.element = element; } int getElement() { return element; }}일반적인 타입지정△------제네릭사용▽class MyArray { T element; void setElement(T element) { this.element = element; } T getElement() { return element; }}//외부에서 타입을 지정한다.MyArray myArr01 = new MyArray..
예외오류와 예외의 차이오류(Error) : 일반적으로 회복이 불가능하다보통 시스템 레벨에서, 또는 환경적인 이유로 발생한다ex. 메모리 부족(OutOfMemoryError), 스택오버플로우(StackOverflowError)... 예외(Exception) : 일반적으로 회복이 가능하다(= 예외 발생을 인지하고 대응이 가능함)코드 레벨에서 발생하여 문제 상황에 대한 처리가 가능하다ex. 비정상적인 연산처리(ArithmeticException), Null 객체 참조(NullPointException)... 예외의 종류 1. 코드 실행 관점1) 컴파일 에러(예외).java파일을 .class파일로 컴파일 할 때 발생한다대부분 자바 언어의 규칙을 따르지 않아 발생한다.문법에 맞게 다시 작성하는 것으로 해결한다.프..
추상 클래스구체적이지 않은 추상적인 데이터를 담고 있는 클래스이다.미완성되어 인스턴스화가 불가능하며, abstract 키워드를 사용한다.추상 클래스는 추상 메서드를 포함(없어도 선언가능)할 수 있다.추상 클래스는 자식 클래스에 상속되어 자식 클래스에 의해서만 완성된다.여러개의 자식 클래스에서 공통적인 필드, 메서드를 추출해 만든다. 추상메서드구현되지 않은 미완성 메서드. abstract 키워드로 선언한다.추상메서드는 일반적인 메서드와 다르게 코드를 적는 블록{}이 없다.즉, 정의만 하고 실행 내용은 없는 것.public abstract class 추상클래스명 { //추상클래스 abstract 리턴타입 메서드이름(매개변수, ...); //추상메서드} 클래스 상속추상 메서도는 extends 키워드를 사용해..
부모클래스의 멤버(필드, 메서드)를 자식 클래스에게 물려주는 것이다.코드의 중복 제거, 재사용성의 증가로 생산성과 유지보수성이 유리해진다.클래스의 다중상속은 허용되지 않는다.(관계가 복잡해지는 문제가 생김) 상속은 extends 키워드를 사용한다.확장의 개념으로, 부모클래스가 자식클래스를 품는 것이 아니라,자식 클래스에 부모 클래스를 더해 확장되는 것이다. 1) 부모 클래스에 새로운 필드와 메서드가 추가되면자식클래스는 이를 상속받아 사용한다.2) 자식 클래스에 새로운 필드와 메서드가 추가되어도부모 클래스에는 영향이 없다.3) 자식 클래스의 멤버 개수 >= 부모 클래스의 멤버 개수 final 클래스와 final 메서드public final class Car{}public class SportCar e..
객체를 생성하기 위한 설계도.필드, 생성자, 메서드로 구성된다. 클래스 생성 방식1. 클래스 선언2. 객체 속성(필드) 정의하여 데이터 저장3. 객체를 생성하는 방식(생성자) 선언.생성자는 반환타입이 없고 이름은 클래스와 동일함4. 객체 행위(메서드) 정의public class Car{ //1. 클래스 선언 //2. 필드 정의 String company; String model; String color; double price; double speed; char gear; //3. 생성자 정의 //()안에 매개변수가 없으니 기본 생성자. public Car(){} //4. 메서드 정의 //반환타입이 char인 changeGea..
객체세상에 존재하는 식별이 가능한 것을 뜻한다.ex. (물리적으로 존재)자동차, 도서관, 사람, (개념적인 것)강의, 운동 객체는 속성과 행위로 구성이 되어있다.ex. 자동차(객체)속성) 회사, 모델, 색상, 가격...행위) 가속, 브레이크, 경적... 자바에서는 위와 같은 속성을 필드, 행위를 메서드로 구현한다.◀현실세계의 객체를 소프트웨어의 객체로 설계하는 것을 '객체 모델링'이라고 부른다. 객체들은 서로 행위(메서드)를 통해 상호작용하고, 데이터를 주고 받는다.메서드 호출 시 괄호()안에 데이터를 넣어 호출 할 수 있는데, 이를 파라미터 또는 매개값이라고 표현한다.ex. gasPedal(50) >> 매개값(파라미터): 50이 메서드를 통해 반환되는 값을 리턴 값이라고 표현한다.ex. return s..