본문 바로가기

Java39

JAVA- toString() toString() 메소드란 ? -"Object"클래스가 가진 메소드 중 "toString"메소드가 있습니다. -"toString" 메서드는 객체가 가지고 있는 정보나 값들을 문자열로 만들어 리턴하는 메소드 입니다. "String" 클래스 객체의 "toString"메소드는 자신이 가진 값을 그대로 리턴해주고, "File"클래스 객체의 "toString"메소드는 자신이 가진 해당 경로값을 리턴해 주고있습니다. toString() 메소드를 재정의해서 사용 이런식으로 toString()메서드는 재정의하여 원하는 문자열을 return할 수 있도록 만들어 줄 수 있다. 사용할때는 클래스이름.toString()으로 호출하면 된다. 위 코드를 보시면 "str"이라는 "String"클래스의 객체 입니다. 그런데 신기하.. 2019. 9. 28.
JAVA - Object object란 ? 모든 class의 공통된 조상 = object라고 한다, java.lang.Object 클래스는 자바 API의 모든 클래스와 사용자가 정의한 모든 클래스의 최상위 클래스이다. 즉, 모든 자바 클래스들은 Object 클래스로부터 상속받는다. ex) 어떠한 class를 정의했는데 그 class가 다른 class를 상속받지 않고 있다면 java는 암시적으로 extend object를 자동 추가하게 된다 . class O {} ->아무것도 상속 안받는 것 처럼 보이지만 실제로는 , class O extends object {} ->이렇게 정의된것과 같다. 2019. 9. 28.
JAVA - Exception(예외)과 finally 란 ? 블럭처리 하고 Alt + Shift + Z 단축키를 이용해서 -try - catch문은 에러를 잡는 문법으로 사용됩니다. 또한, try-catch문이 끝났다고 해서 모두 종료가 되는것이 아니라 catch문으로 오류를 잡고 중괄호를 빠져 나온 다음 구문을 실행한다. 따라서 마지막에 catch다음 추가로 print문이 있을 경우 출력하게되고 없을 경우 빠져나온다 ex) public static void main(String[] args){ try { ~~~~ . .. }catch(Exception e) { ~~~ } System.out.print (" cath에서 종료 안하고 추가로 이쪽 구문 마지막으로 실행 " ); } ArithmeticException : 수학적인 오류 .. 2019. 9. 15.
인터페이스(interface)와 다형성 왜 사용하는가 ? 인터페이스가 어떻게 class가 할 수 없는 일을 할 수 있는가를 알아보겠다. 사진에서 인터페이스의 다향성도 마찬가지로 , 인터페이스( In 1)에서 정의된 메서드를 어떠한 클래스 ( A )가 인터페이스 ( In 1)을 implements 한 상황이라면 , 다향성으로 A obj = new in1 ; 이런 식으로의 선언이 가능하다. 일반 다향성과 마찬가지로 interface안에 있는 메서드들만 사용이 가능하다 ※ 하지만! A라는 class가 인터페이스의 구현을 여러 개 즉 A 클래스가 implements 가 2개 이상일 경우에는 마찬가지로 각각의 인터페이스에 존재하는 메서드들만 사용이 가능하다. -> 데이터 타입이 어떤 것인지에 따라 메서드들을 가져올 수 있는 것이 다르다. interface다형성 사용 이.. 2019. 9. 15.
클래스의 접근 제어자 -클래스의 접근 제어자는 총 2개로 public과 default이다. -클래스의 접근 제어자는 패키지와 관련된 개념이다. default -접근 제어자를 붙이지 않은 경우 default가 된다. -같은 패키지에서만 사용이 가능 O public -접근제어자가 public인 클래스는 다른 패키지의 클래스에서도 사용 가능 O 2019. 9. 15.
자바 final final 이란 ? - > abstract는 정반대의 의미 상속이나 변경을 금지하는 규제 - >final은 필드안이건 밖이건 한번 값을 지정하면 그 값은 수정이 불가능하다 ex) static final double PI = 3.14; // 모든 인스턴스에서 바뀌지 않는 공통적인 값 // 값을 절대 변경할 수 없음. - > 또한, 다른 클래스에서 정의한 final 메소드는 인스턴스화 시켜서 불러 쓸 수 없다. - > 마찬가지로 클래스 자체에 final이 붙으면 그 클래스 역시 인스턴스화 시킬 수 없다. 2019. 9. 15.