본문 바로가기
반응형

Study/java13

객체 지향 프로그래밍(OOP)에서 추상메서드와 인터페이스의 차이점이란? 먼저 일전에 필자가 포스팅한 블로그를 보자. 2022.11.13 - [Study/java] - Java 추상클래스(abstract class)와 인터페이스(Interface)의 차이는 무엇일까? Java 추상클래스(abstract class)와 인터페이스(Interface)의 차이는 무엇일까? 수업을 듣는 도중 의문이 들었다. 추상클래스(abstract class)와 인터페이스(Interface)는.. 얼핏 보면 하는일이 같아보이는데 그럼 추상클래스를 인터페이스처럼 써도 되는거고 인터페이스를 추상클 yat-ong.tistory.com 벌써 6개월이 흘렀다. 저 포스팅을 한게 11월 13일이니 아마 학원 수업을 시작한지 한달이 채 되지않은 시점인거같다. 그때보다 지금 코딩실력은 늘었나? 에 대한 대답은 Y.. 2023. 4. 11.
[Java]다중 Try-Catch 예외 처리를 하다보면 수많은 Try-catch 절을 만나게된다. 이놈의 이클립스는 매번 예외처리 해달라고 징징대질 않나... 근데 그걸 또 각각 try-catch 절로 묶어버리면 코드가 쓸데없이 지저분해보이고... 길어지고... 그런건 딱 질색이다. 코드는 최대한 간결했으면 좋겠고 명시적이였으면 좋겠으며, 중복되는 구절은 최대한 없을수록 좋다 라는게 내 신조이다. 이럴때 사용하는것이 다중 Try-catch이다. 예를들어 기존에 이클립스에서 생성해주는대로 try-catch를 처리하게되면 이런식으로 코드가 짜여질수 밖에 없다. package db.dbEx2; import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLExcept.. 2022. 12. 5.
Java 스트링빌더(Stringbuilder), 스트링버퍼(Stringbuffer) Stringbuilder와 Stringbuffer는 거의 흡사하다. 다만, 동기화가 되고 안되고의 차이로 나눌수 있을거같은데. 동기화가 되면 멀티쓰레드에 안전하다. 싱글쓰레드와 멀티쓰레드의 차이점은, 쉽게 얘기하자면 싱글쓰레드는 1인이 혼자 일하는거고, 멀티 쓰레드는 여러 사람이 여러일을 동시에 하는것이라고 보면 될거같다. Stringbuffer는 동기화가 되어있다. 따라서 멀티 쓰레드에 안전하고, Stringbuilder는 동기화가 안되어있다. 따라서 멀티 쓰레드 프로그램이라면 Stringbuffer를 사용하는것이 좋고. 싱글 쓰레드 프로그램이면 오히려 Stringbuffer가 불필요한 성능 저하를 일으킨다. 따라서 이럴때는 Stringbuilder가 적합하다. 그외 나머지 사용할수 있는 메소드나같은건.. 2022. 11. 26.
Java 추상클래스(abstract class)와 인터페이스(Interface)의 차이는 무엇일까? 수업을 듣는 도중 의문이 들었다. 추상클래스(abstract class)와 인터페이스(Interface)는.. 얼핏 보면 하는일이 같아보이는데 그럼 추상클래스를 인터페이스처럼 써도 되는거고 인터페이스를 추상클래스처럼 써도 되는거 아닌가? 그럼 왜 그 둘이 별개로 나뉘어서 불리는걸까? 궁금증이 들어 이 둘의 차이점을 기록하려 한다. 추상클래스 = 추상클래스 안에 메서드는 추상메서드가 존재해야하고, 일반 메서드도 존재 가능하다. 일반메서드는 그대로 사용 가능한 반면, 추상클래스 안에 추상메서드는 하위클래스에서 반드시 오버라이딩 해야한다. 그리고 *추상클래스는 상속관계에 이용되기때문에 한 클래스에 한 상속관계만 가능하다.* 인터페이스 = 일반메서드는 존재할수 없다, 기본적으로 전부 추상메서드만 존재하며, 상속.. 2022. 11. 13.
반응형