본문 바로가기

BOOKS/수월한 Java6

추상 클래스 개요 추상의 사전적 의미는 사물이나 어떤 표상들의 성질, 본질, 공통성등을 추출하여 파악하는 것들을 의미한다. 자바 프로그램에서는 각 클래스들 간의 공통점을 추출하여 하나의 클래스를 만든 것이라 볼 수 있다. 또한 추상 클래스를 만드는 목적 중 하나는 중복되는 코드들을 최소화하기 위한 목적도 있다. 일반 클래스와 다른 점은 일반 메서드와 추상 메서드가 모두 존재할 수 있다는 것이다. 추상 클래스를 정리하면 아래와 같다. 추상 클래스는 단독으로 인스턴스를 만들 수 없다. 다른 클래스에 상속되어 사용된다. 추상 메서드는 자손 클래스에서 반드시 재정의하여야 한다. 추상 클래스 작성하기 abstract class AbsClass{ public void prn(){ ... } // 일반 메소드 public voi.. 2024. 4. 7.
인터페이스 개요 자바 클래스들이 필수로 사용되어야 하는 기능들을 추상 메서드로 정의하는 것으로 일종의 클래스들의 가이드라인 역할을 하는 구조라 볼 수 있다. 인터페이스 안에는 추상 메서드와 상수만으로 이루어져 있다. 구현 코드가 없기 때문에 인스턴스를 만들 수 없고 자손 클래스가 상속받아 추상 메서드를 재정의하여 사용하게 된다. 인터페이스의 특징을 정리하면 아래와 같다. 다중 상속 가능 : class 형식으로 만드러 진 클래스들은 단일 상속만을 지원하는데 반해 인터페이스로 만들어진 구조는 다중 상속을 지원한다. 생성자 불가 : 단독으로 인스턴스를 생성할 수 없기 때문에 생성자 사용은 불가하다. 메서드 오버라이딩 : 인터페이시를 상속받은 클래스에서는 반드시 추상 메서드들을 재정의(Overriding) 해야 한다. 인.. 2024. 4. 7.
swing으로 만들어본 멀티 메모장 #2/2 안녕하세요 IT여행자입니다. 이번 여행지는 swing으로 만들어본 멀티 메모장 두 번째 부분입니다. 첫 번째 영상에서도 언급한 것처럼 자바 GUI를 사용한 프로그램이라는 인터페이스가 많이 사용되는 인터페이스가 아니지만, 진입 장벽이 높지 않으며, 웹 인터페이스처럼 다양한 언어를 사용하지 않아도 만들어 볼 수 있는 프로그램이기에 두 편에 걸쳐 만들어 봤습니다. 개발에 필요한 보다 자세한 내용들은 영상을 참조하시면서 하나씩 개발해 보시는 걸 추천드립니다. 1편에서는 레이아웃에 관한 내용을 다루었고, 2편에서는 BACK-END 부분을 다루었습니다. 주요 내용은 아래와 같습니다. MemoVo.java : 하나의 메모 내용을 저장하는 Value Object config.xml : mybatis를 사용하기 위한 환.. 2023. 3. 20.
swing으로 만들어본 멀티 메모장 #1/2 안녕하세요 IT여행자입니다. 이번 수첩은 자바 GUI API 중 하나인 swing을 사용하여 멀티 메모장을 만들어 볼까 합니다. 우리나라의 개발 환경은 대부분이 웹에 치중되어 있어 그리 흥미로운 인터페이스는 아니지만 자바언어만 알고 있어도 만들어 볼 수 있는 주제이기에 선정하였습니다. 개발 난이도는 아마추어 중급 수준입니다. 개발 난이도에 대한 설명이나 개발 환경은 영상을 참고해 주시기 바랍니다. 또한 영상은 두 개의 파트로 나뉘어 있습니다. 개발 환경 https://youtu.be/jJK67Ex2W58 아래의 코드들은 직접 작성된 코드가 아니라 이클립스의 윈도빌더에 의해 기본적으로 작성된 코드들입니다. 따라서 이 부분까지는 직접 작성하지 마시고 영상을 보면서 과정대로 따라가시면 만들어 보시기 바랍니다... 2023. 3. 1.
List에 담긴 정보를 배열로 변환하기 안녕하세요 IT여행자입니다. 배열은 여러 가지의 장단점을 갖고 있는 데이터 자료 구조중 하나입니다. 자바의 List Collection은 배열이 갖고 있는 단점들을 해결할 수 있는 좋은 대안입니다. 그러나 가끔 List에 담긴 정보들을 배열로 변환해서 처리할 때가 있습니다. 방법은 간단하지만 배열로 바꾸는 구조가 일반적이지 않습니다. 먼저 레퍼런에 언급된 구조를 보면 아래와 같습니다. Object[] obj List.toArray() 즉, List에 담긴 내용을 Object 타입의 배열로 반환하는 매서드명이 toArray()입니다. 그런데 toArray 메서드에는 아래와 같이 중복 정의된 메서드가 있습니다. T[] obj List.toArray(T[] t) 매개변수 T[] t 의 타입의 데이터를 List.. 2022. 11. 27.
이클립스에서 Data Management로 MySQL 연결하기 다양한 Database 클라이언트 유무료 툴들이 존재하지만, 간단한 쿼리 작업등을 하기 위해 굳이 별도의 클라이언트 툴을 설치하기 싫다면 이클립스 기능 중 하나인 Data Management를 사용하여 데이터베이스 연결하고 쿼리를 실행할 수 있습니다. 현재 사용하고 있는 대부분의 DBMS를 연결할 수 있지만, 본 지면에서는 MySQL을 예로 들어 보겠습니다. 물론 사용하려는 MySQL은 로컬이든 원격지든 설치되어 있고, 사용권한이 있는 계정은 있어야 합니다. 또한 사용하려는 버전의 JDBC 드라이버도 이클립스를 사용하고 있는 로컬 컴퓨터에 다운로드되어 있어야 합니다. 따라서 본 지면에서는 JDBC 다운로드부터 진행하도록 하겠습니다. JDBC Driver 다운로드 mysql.com 사이트를 방문한 뒤, 메.. 2021. 10. 30.
반응형