본문 바로가기

전체 글92

[java] 업캐스팅(UpCasting)과 다운캐스팅(DownCasting) 캐스팅(Casting)이란? 캐스팅이란 타입을 변환하는 것을 말하며 형변환 이라고도 한다. 자바의 상속 관계에 있는 부모와 자식 클래스 간에는 서로 간의 형변환이 가능하다. 업캐스팅(UpCasting)이란? 업캐스팅이란 자식 클래스(Sub Class)의 객체가 부모 클래스(Super Class) 타입으로 형변환 되는 것을 말한다. 다운캐스팅(Downcasting)이란? 업캐스팅과 반대로 캐스팅 하는 것을 다운캐스팅이라고 한다. 업캐스팅된 것을 다시 원상태로 돌리는 것을 의미하며, 하위 클래스로 다운캐스팅 할때는 타입을 명시적으로 지정해줘야한다. 부모 클래스(Super Class) 객체를 서브 클래스(Sub Class) 타입으로 변환하는것을 의미한다. 업캐스팅이 필요한 이유? 다형성과 코드 재사용성을 높이.. 2022. 2. 15.
[java] 추상클래스와 인터페이스 추상 클래스란? 자바에서는 하나 이상의 메서드를 포함하는 클래스를 가리켜 추상 클래스(abstract class)라고 한다. 추상 클래스는 OOP에서 중요한 특징인 다형성을 가지는 메서드의 집합을 정의할 수 있도록 해준다. 즉, 반드시 사용되어야 하는 메서드를 추상 클래스에 추상 메서드로 선언해 놓는 것이다. 그러면 이 클래스를 상속받는 모든 클래스에서는 이 추상 메서드를 반드시 재정의해야 한다. 추상 메소드란 ? 추상 클래스(abstarct class)란 자식 클래스에서 반드시 오버라이딩해야만 사용할 수 있는 메서드를 의미한다. 자바에서 추상 메서드를 선언하여 사용하는 목적은 추상 메서드가 포함된 클래스를 상속받는 자식클래스가 반드시 추상 메서드를 구현하도록 하기 위함이다. 추상 클래스 구현 연습 ab.. 2022. 2. 8.
[java] 접근지정자 접근 지정자란? 접근 지정자는 클래스혹은 클래스내의 멤버앞에 붙어서 다른 클래스의 접근을 제한하는 역할을 한다. 객체를 캡슐화하기 때문에, 객체에 다른 객체가 접근하는 것으로 허용할지, 말지를 지정할 필요가 있다. public : 모든 접근 허용, 어떠한 클래스가 접근을 하던 모두 허용 protected : 같은 패키지와 상속받은 클래스, 클래스 내부에서만 접근 가능 default : 기본 지정자, 접근 지정자를 명시하지 않을 시 적용 됨, 같은 패키지와 클래스 내부에서만 접근 가능 private : 외부에서는 접근이 불가능, 클래스 내부에서만 접근 가능 ------------------강사님 강의 메모 ------------------------ 접근지정자 static - 정적, 실행전, 변화가 없다,.. 2022. 2. 7.
[java] 예외처리, 객체지향, 클래스 예외(Exception)란? 자바에서 오작동이나 결과에 악영향을 미칠 수 있는 실행 중 발생한 오류를 예외라고 한다. 실행 중에 예외가 발생하는 몇 가지 경우이다. • 정수를 0으로 나누는 경우 • 배열의 크기보다 큰 인덱스로 배열의 원소를 접근하는 경우 • 존재하지 않는 파일을 읽으려고 하는 경우 • 정수 입력을 기다리는 코드가 실행되고 있을 때, 사용자가 문자를 입력한 경우 위와 같이 예외가 발생하면 자바 플랫폼이 먼저 알게 되어, 실행 중인 응용프로그램에게 예외를 전달한다. 만일 응용프로그램이 예외에 대처하는 코드를 가지고 있지 않다면, 자바 플랫폼은 응용프로그램을 곧바로 종료시킨다. 예외 처리, try-catch-finally 문 예외 처리란, 예외가 발생하면 이에 대응하는 것을 말한다. 자바는 .. 2022. 2. 4.
[java] continue와 break 그리고 배열 Continu란? continu 문은 반복문을 빠져나가지 않으면서 즉시 다음 반복으로 넘어가고자할 때 사용된다. break 문은 현재 반복문을 벗어나게 하지만, continue 문은 즉시 다음 반복으로 넘어간다. continu문을 이용하여 양수 합 구하기 import java.util.Scanner; public class ContinueExample { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("정수를 5개 입력하세요."); int sum = 0; for (int i=1; i 2022. 2. 3.
[java] 조건문과 반복문 if문 실행 과정 3의 배수 판별하기 import java.util.Scanner; public class MultipleOfThree { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.print("수를 입력하세요"); int num = sc.nextInt(); if (num % 3 ==0) { System.out.println("3의 배수입니다."); } else { System.out.println("3의 배수가 아닙니다"); } sc.close(); } } 2중 if문 이용하기 import java.util.Scanner; public class NestedIf { public stati.. 2022. 1. 28.