JAVA14 JAVA | java.lang 패키지 Ch9. java.lang패키지와 유용한 클래스 1. java.lang패키지 1.1 Object클래스 -모든 클래스의 최고 조상. 오직 11개의 메서드만을 가지고 있다. protected Object clone() - 객체 자신의 복사본 반환 public boolean equals(Object obj) - 객체 자신과 객체 obj가 같은 객체인지 알려줌(같으면 true) protected void finalize() 생성자(=초기화객체) - 객체가 소멸될 때 가비지 컬렉터에 의해 자동적으로 호출(거의안씀) public Class getClass() - 객체 자신의 클래스 정보를 담고 있는 Class인스턴스를 반환한다. public int hashCode() - 객체 자신의 해시코드를 반환한다. publi.. 2022. 2. 14. JAVA | 예외처리 ch 8 예외처리 1.예외처리 exception handling 1.1 프로그램 오류 컴파일 에러 : 컴파일 할 때 발생하는 에러 런타임 에러 : 실행할 때 바생하는 에러 논리적 에러 : 작성 의도와 다르게 동작 -Java의 런타임 에러 에러 : 프로그램 코드에 의해서 수습될 수 없는 심각한 오류 예외 : 수습될 수 있는 미약한 오류 ->에러는 어쩔 수 없지만 예외는 처리하자 예외처리 -> 프로그램의 비정상 종료를 막고 정상적인 실행상태를 유지 Exception클래스와 자손클래스 : 사용자의 실수와 같은 외적인 요인에 의해 발생하는 예외 RuntimeException클래스와 자손클래스 : 프로그래머의 실수로 발생하는 예외 1.3 예외 처리하기 - try-catch문 try { //예외가 발생할 가능성이 .. 2022. 2. 12. JAVA | 인터페이스 장점, 내부 클래스 7.7 인터페이스의 장점 -개발 시간을 단축할 수 있다. -변경에 유리한 유연한 설계가 가능하다. -표준화가 가능하다. -서로 관계없는 클래스들을 관계를 맺어줄 수 있다. 7.9 디폴드 메서드와 static메서드 -인터페이스에 디폴트 메서드, static 메서드 추가 가능(JDK1.8부터) -인터페이스에 새로운 메서드(추상 메서드)를 추가하기 어려움 해결책-> 디폴트 메서드 -디폴트 메서드는 인스턴스 메서드(인터페이스 원칙 위반) -디폴트 메서드가 기존의 메서드와 충돌할 때 해결책 1. 여러 인터페이스의 디폴트 메서드 간의 충돌 -인터페이스를 구현한 클래스에서 디폴트 메서드를 오버라이딩 해야한다. 2. 디폴트 메서드와 조상 클래스의 메서드 간의 충돌 - 조상 클래스의 메서드가 상속되고, 디폴트 메서드는 .. 2022. 2. 11. JAVA | 추상클래스, 인터페이스 6. 추상클래스 abstract class 6.1 추상클래스란 -미완성 설계도. 미완성 메스드(추상 메서드)를 갖고 있는 클래스 -abstract를 붙이면 됨 abstract class 클래스이름 { ''' } abstract class Player { //추상클래스(미완성 클래스) abstract void play(int pos); //추상메서드(몸통이 없는 미완성 메서드) abstract void stop(); //추상메서드 } -다른 클래스 작성에 도움을 주기 위한 것. 인스턴스 생성 불가 (미완성 설계도기 때문에 제품 생성 불가) -상속을 통해 추상 메서드를 완성해야 인스턴스 생성가능 class AudioPlayer extends Player{ //완성된 설계도 void paly(int pos) .. 2022. 2. 10. JAVA | final 상수 final 상수 정의 상수를 정의할 때 필드 멤버에 final을 붙여 상수를 정의한다 변수와 달리 한버 값을 지정하면 다른 값으로 변경할 수 없다. 상수는 반드시 선언과 동시에 초기화해야 하고 이후에 상수값 변경은 불가능함. 상수- 값을 한번 저장하면 변경할 수 없는 저장공간 2022. 2. 6. JAVA | 재귀호출, 변수의 초기화 Ch6 3.10 재귀호출 recursive call 메서드의 내부에서 메서드 자신을 다시 호출하는 것 재귀호출 하는 메서드를 재귀메서드라고 한다. public class Exam { public static void main(String[] args) { int result = factori(4); System.out.println(result); } static int factori(int n) { int result=0; if(n==1) result =1; else result = n *factori(n-1); return result; } } 5.4 생성자에서 다른 생성자 호출하기 생성자 this() -생성자에서 다른 생성자를 호출할 때 사용 -다른 생성자 호출시 첫 줄에서만 사용가능 (생성자가 하.. 2022. 2. 5. 이전 1 2 3 다음