오늘은 객체 지향의 마지막인 다형성에 대해 공부를 해볼 것이다. 다향성을 기준으로 추상클래스, 추상메소드를 배우고 인터페이스까지 알아볼 것이다. 목차 1. 다향성이란?? 1. 업캐스팅(Up casting) 2. 다운캐스팅(Down casting) 3. 배열에 사용해보기 2. 추상(abstract) 1. 추상 클래스 2. 추상 메소드 3. 인터페이스(interface) 1. 다향성이란?? 다형성(polymorphism)이란 부모-자식 상속 관계에 있는 클래스에서 상위 클래스가 동일한 메시지로 하위 클래스들을 서로 다르게 동작시키는 객체 지향 원리이다. 사실 이렇게 정의만 보고 이해하기가 쉽지 않다. 다향성은 객체나 인터페이스 등 철학적인 느낌을 자아내는 용어이기 때문에 실제로 해보면서 이해하는 게 좋다. ..
오늘은 상속을 주로 공부할 것이다. 목차 1. 상속 2. 상속의 특징 1. 생성자 메소드를 사용하면 자동으로 부모객체를 생성하면서 생성자 메소드가 호출된다. 2. 접근제한자가 적용이 된다. 3. super(); 4. 상속은 여러 번 가능하다. (그러나 여러 클래스를 동시에 하나의 클래스로 상속은 불가) 3. 오버라이드(Override) 1. 기존기능을 완전히 바꾸는 형태 2. 기존 기능을 유지하며 조금만 바꾸는 형태 4. 대학교 정보 제공 프로그램 예제 5.Final 1. 상속 상속이란 흔히 다른 사람이 사망한 사람으로부터 그 권리와 의무의 일체를 이어받는 일을 말한다. 비슷하게 프로그래밍에서 상속은 어떤 클래스가 가지고 있는 메소드와 변수를 다른 클래스가 갖도록 하는 것이다. 이로써 코드의 재사용성을 ..
오늘은 생성자에 대해 공부할 예정이다. 목차 1. 생성자? 2. 사용 이유 3. this() 4. 멤버변수 초기화 4단계 5. Static 6. Inner Class 7. Local Class 사용자 정보를 데이터로 갖는 Person 클래스를 만든다고 생각해 보자. 그럼 당연히 main 함수에는 참조변수를 이용해서 사용해야 한다. 그리고 Person 객체는 클래스가 없으면 만들지 못하는 사용자 정의 객체다. 따라서 위의 사진처럼 클래스를 만들어줘야 한다. 이때 주의할 점이 있다. 멤버변수는 private으로 하는 것이 기본이고 멤버함수는 public으로 하는 것을 권장한다. 멤버변수를 private으로 멤버함수를 public으로 하면 우리는 이제 main 함수에서 멤버변수를 건드릴 수 없다. 그럼 어떻게..
오늘부터 며칠간은 객체 지향 프로그래밍(OOP)에 대해 더 알아보는 시간을 가질 것이다. 그리고 오늘은 class 만들기를 중점으로 공부할 것이다. 목차 1. Class의 위치 1) 별도의 .java 문서에 만들기 2) 하나의 .java 문서 안에 여러 개의 class를 설계하기 3) class안에 또 다른 class 설계하기 4) 함수(메소드)안에 class를 설계하기 2. 패키지(Package) 1) 패키지 만들기 2) 다른 패키지의 클래스 사용하기 3) import 3. 접근제한자 (Access Modifier) 혹시라도 객체 개념이 부족하면 밑의 글을 다시 한번 참고하자. 2023.01.16 - [Android journey/Java] - Java #0 - 객체 (국비 12일 차) Java #0 ..
문제1 프로그램 사용자로부터 하나의 영단어(String)를 입력 받아라. 그리고 이 입력된 단어를 한줄에 한문자(character)씩 출력시켜 보아라. 단, 출력할 때 각 문자에 1이 더해진 문자가 출력되도록 해보자. 예를 들어, "Array"라는 단어가 입력되면 B s s b z A: 문제는 간단하다. 다만 마지막 출력할 때 형식을 (char)로 바꿔줘야 한다.!! 문제2. 2개의 String 참조변수를 선언해라. 그런다음 프로그램 사용자로부터 영단어를 입력 받아서 String변수 중 하나로 참조한다. 그 다음 남은 하나의 String 참조변수에 저장된 영단어를 역순으로 뒤집어서 String 객체를 만들어서 참조해보자. 뒤집고 나서는 제대로 뒤집혔는지 확인하기 위해서 출력해보자. 예를들어, "Hello..
오늘 배울 것은 배열 객체이다. c언어 때부터 많이 사용해 온 배열이나 java의 특징때문에 꼭 참조변수를 이용해야 한다. 배열 객체 Array 그럼 java에서 배열을 만드는 방식부터 알아보자. 정확하게 말하면 c언어와는 약간 다르다. Java는 참조변수를 사용하기 때문에 c언어에서 Heap 메모리를 사용해 포인터 변수를 사용한 문법을 써줘야 한다. 또한 int aaa[] 처럼 사용도 가능하지만 java에선 int[] aaa처럼 많이 사용한다고 한다. 우선 기본적으로 나머지는 c언어에서 사용방법이 같다. 배열을 사용할 때, 하나씩 출력하거나 하나씩 입력해야 한다. 대신 배열 객체에 배열 요소의 개수를 확인할 수 있는 멤버변수가 있다. 어제 String객체에서 한 length처럼 말이다. 배열이름 aaa..