728x90

분류 전체보기 210

[ Java ] 내부 클래스(Inner Class)

CHAPTER 17. Inner class 알아가기 1 ) Inner class의 정의 "클래스 안에 선언된 클래스" 특정 클래스 내에서만 주로 사용되는 클래스를 내부 클래스로 선언합니다. 이러한 내부 클래스는 외부 클래스(outer class)에 대해 두 개의 클래스가 서로 긴밀한 관계를 맺고 있을 때 선언할 수 있습니다. 2 ) Inner class 장단점 장점 - 내부 클래스에서 외부 클래스의 멤버들을 쉽게 접근할 수 있습니다. -코드의 복잡성을 줄일 수 있습니다. 단점 -코드의 재사용이 어렵습니다. -내부(중첩) 클래스입니다.(inner class, nested class) 3 ) 선언하는 위치에 따른 4가지 형태 내부 클래스는 필드와 마찬가지로 선언된 위치에 따라 다음과 같이 구분됩니다. - 인..

[ JAVA ]/JAVA 2023.01.03

[ Java ] Scanner

CHAPTER 16. Scanner 알아가기 오늘은 java.util 패키지에 포함되어 있는 Scanner 클래스의 사용법에 대해 알아보도록 하겠습니다. 자바를 처음 배울 때 아마 대부분은 키보드로 입력받기 위해 Scanner라는 클래스를 썼을 거예요! 자바 외에도 다양한 언어들은 각각의 입력 방식이 있고, 각 언어별로 대표하는 대중적인 입력방식이 하나씩 있습니다. 자바에서도 여러 가지 입력 방법이 있는데, 그중에 가장 쉬우면서도 대중적인 입력 중 대표적인 것이 바로 Scanner 클래스를 이용한 입력입니다. 1 ) Scanner 클래스 특징 - Scanner 클래스란 화면으로부터 데이터를 입력받는 기능을 제공하는 클래스입니다. 카톡에서 메시지를 입력 후 전송 버튼을 누르면 상대방에게 메세지가 전송되듯 ..

[ JAVA ]/JAVA 2022.12.29

[ Java ] Collection Framework

CHAPTER 15. Collection Framework 이전 포스팅에서 java.utill 패키지에서 제공하는 Generic에 대해서 알아보았습니다. 오늘은 Collertion Framework(컬렉션 프레임워크)에 대해 알아봅시다!! 1 ) Collertion Framework란? 자바에서 Collertion Framework란 다수의 데이터를 쉽고 효과적으로 처리할 수 있는 표준화된 방법을 제공하는 클래스의 집합을 의미합니다. 배열은 크기가 고정되어 있는 데에 반해, 컬렉션 프레임워크는 가변적인 크기를 갖는(Resizabla)등의 특징이 있고, 데이터 삽입, 탐색, 정렬 등 편리한 API를 다수 제공합니다. 즉 데이터를 저장하는 자료 구조와 데이터를 처리하는 알고리즘을 구조화하여 클래스로 구현해 ..

[ JAVA ]/JAVA 2022.12.28

[ Java ] Generic

CHAPTER 14. Generic 기본 개념 이해하기 오늘은 java.utill 패키지에서 제공하는 Collertion Framework(컬렉션 프레임워크)에 대해 알기 전에 알고 넘어가야 하는 Generic에 대해 포스팅을 해보겠습니다! 1 ) Generic 이란? 제너릭(Generic)은 클래스 내부에서 지정하는 것이 아닌, 외부에서 사용자에 의해 지정되는 것을 의미합니다. 한마디로 특정(Specific) 타입을 미리 지정해주는 것이 아니라 필요에 의해서 지정할 수 있도록 하는 일반(Generic) 타입을 이야기하며, 클래스나 메서드에서 사용할 내부 데이터 타입을 컴파일 시에 미리 지정하는 방법입니다. 그럼 제너릭(Generic)이란 무엇인지에 대해 궁금증이 생기는데 우리는 지금까지 Java를 공부..

[ JAVA ]/JAVA 2022.12.26

[ Java ] JDK 기본 클래스 2

이전 포스팅에 이어서 JDK 기본 클래스에 대한 포스팅 시작 하겠습니다!! 2-4 ) protected Object Object.clone() 객체 원본을 유지해 놓고 복사본을 사용한다거나, 기본 틀(prototype)의 복사본을 사용해 동일한 인스턴스를 만들어 복잡한 생성 과정을 간단히 하려는 경우에 clone() 메서드를 사용할 수 있다. clone()메서드는 객체를 복제해 또 다른 객체를 반환해주는 메서드 입니다. 예제를 통해서 자세히 알아봅시다. 글쓴이는 이전 포스팅에서 학번(id)과 이름(name)을 갖는 학생(Student) 클래스를 만들었고, 그리고 이름과 학번을 `홍길동(921234)`와 같이 출력하는 toString() method를 구현을 했었다. 그럼 학생(Student) 클래스를 복..

[ JAVA ]/JAVA 2022.12.25

[ Java ] JDK 기본 클래스 1

CHAPTER 13. JDK 기본 클래스 알아가기 오늘은 JDK(Java Development Kit : 자바 개발자 도구)에 대한 포스팅을 하겠습니다..!! 자바를 설치하면 JDK도 같이 설치되는데, 개발자들의 편의를 위해 오라클이 미리 만들어놓은 클래스의 집합입니다. 이 클래스들은 기능별로 구분되어 패키지 단위로 제공되고, 이렇게 자바에서 기본으로 제공하는 패키지를 자바 API라고 합니다. 1 ) Java.lang Package 지금까지 사용한 String , Integer와 같은 클래스를 자료형으로 불러서 사용했는데, 이러한 클래스들은 'java.lang package'에 속해있습니다. String 클래스의 전체 이름은 java.lang.String이고, Integer 클래스의 전체 이름은 java..

[ JAVA ]/JAVA 2022.12.22

[ Java ] Interface 2

이전 포스팅에 이어서 interface 포스팅 시작 하겠습니다!! Interface는 다중 상속이 가능합니다. implements 키워드를 통해서 상속을 할 수 있는데, 그러면 extends와 차이점이 뭐지??라는 생각을 할 수 있다. 4 ) extends Vs implements - extends 상속을 뜻합니다. 사전적 의미로는 확장, 확대의 뜻을 가지고 있습니다. 코딩으로 치면 조상의 멤버(메서드,변수 등)를 자식에서 그대로 물려받아 추가적으로 자식의 멤버를 추가, 즉 조상의 멤버를 물려받고 자식에게 추가로 확장하여 사용하는 의미로 보면 적당할 것 같습니다. 간단하게 예시로 보자면 클래스끼리는 하나의 클래스만 상속이 됩니다. 하지만 인터페이스끼리는 다중 상속이 가능합니다. 여러 개의 인터페이스를 상..

[ JAVA ]/JAVA 2022.12.21

[ Java ] Interface 1

CHAPTER 12. Interface 알아가기 1 ) 인터페이스(Interface)란? 만약 자식 클래스가 여러 부모 클래스를 상속받을 수 있다면?? 다양한 동작을 수행할 수 있는 큰 장점을 가질 수 있습니다. 하지만 클래스를 이용하여 다중 상속을 할 경우 메소드 출처의 모호성 등 여러 가지 문제가 발생할 수 있어서 자바에서는 클래스를 통한 다중 상속은 지원하지 않습니다. 하지만 다중 상속의 이점을 버릴 수는 없기 때문에 자바에서 인터페이스(Interface)라는 것을 통해 다중 상속을 지원하고 있습니다. 결론으로는 자바의 다형성을 극대화하여 개발코드 수정을 줄이고 프로그램 유지보수성을 높이기 위해 인터페이스(Interface)를 사용합니다. 2 ) 인터페이스(Interface) 특징 - 다중 상속이 ..

[ JAVA ]/JAVA 2022.12.19

[ Java ] 추상 클래스

CHAPTER 11. 추상 클래스 알아가기 추상 클래스(abstract class)란? 추상 클래스는 객체 지향 프로그래밍에서 중요한 특징인 다형성을 가지는 메소드의 집합을 정의할 수 있도록 해준다. 자바에서는 하나 이상의 추상 메소드(abstract mathod)를 포함하는 클래스를 가리켜 추상 클래스라고 한다. tip )추상 클래스는 생성(인스턴스화) 할 수 없다! AbstSuper a = new AbstSuper(); //Cannot instanciate the Abstract Class!! 1 ) 추상 메소드(abstract mathod) 추상 메소드(abstract mathod)란 자식 클래스에서 반드시 오버 라이딩해야만 사용할 수 있는 메소드를 의미한다. 자바에서는 추상 메소드가 포함된 클래스..

[ JAVA ]/JAVA 2022.12.15

[ Java ] 상속과 다형성

CHAPTER 11. 상속과 다형성 알아가기 1 ) 상속(Inheritance)이란? 상속은 새 클래스를 작성할 때, 기존에 존재하는 클래스에서 멤버를 물려받아 생성하는 행위이다. -모든 클래스의 최상위(조상) 클래스는 Object이다. -부모 클래스의 멤버 변수와 메서드를 상속 ( private 제외 ) # 구문 Class Parent {} Class Child extends Parent{} - 부모 클래스는 Parent가 되고, 자식 클래스는 Child가 된다. -자식 클래스는 부모 클래스의 함수나 변수를 그대로 가져와서 사용할 수 있지만, 부모 클래스는 자식에서 만들어진 변수나 함수를 사용할 수 없다. -자식 클래스가 상속을 받을 때, 부모의 생성자는 상속되지 않는다. 2 ) Method Overr..

[ JAVA ]/JAVA 2022.12.14
728x90