Java/객체지향(8)
-
[Java] 인터페이스 연습 문제 풀이
1. TV 클래스가 실행되었을 때 "TV를 켰습니다"라고 출력되도록 코드를 작성하시오. public class TV implements Remocon { @Override public void powerOn(){ System.out.println("TV를 켰습니다."); } public static void main(String[] args) { Remocon r = new TV(); r.powerOn(); }} 2. printSound()를 호출했을 때 Cat과 Dog 객체를 주고 실행하면 "야옹" "멍멍"이 실행되도록 코드를 작성하시오. public class Cat implements Soundable{ @Override public String sound(){ r..
2024.08.23 -
[Java] 인터페이스 연습 문제
1. TV 클래스가 실행되었을 때 "TV를 켰습니다"라고 출력되도록 코드를 작성하시오. public interface Remocon { public void powerOn();}public class TV /// { /// public static void main(String[] args) { Remocon r = new TV(); r.powerOn(); }} 2. printSound()를 호출했을 때 Cat과 Dog 객체를 주고 실행하면 "야옹" "멍멍"이 실행되도록 코드를 작성하시오. public class SoundableExample { public static void printSound(Soundable soundable) { System.out.println(so..
2024.08.23 -
[Java] 인터페이스
인터페이스 역할인터페이스는 다른 객체를 서로 연결하는 역할을 한다. 객체A는 인터페이스를 통해 객체B를 사용할 수 있다. 객체 A가 직접 객체 B를 호출하지 않는 이유는 아래와 같은 상황 때문이다. 객체 A는 객체 B에서 직접 객체 C로 변경할 필요가 없다. 객체 A는 객체 B든 C든 상관없이 메서드 실행 결과만 다르면 다른 결과를 얻을 수 있다. 이처럼 인터페이스는 다형성 구현을 위해 사용된다. 인터페이스 선언인터페이스는 class 키워드 대신 interface를 사용한다. 제한 접근자로는 default와 public을 붙일 수 있다. 인터페이스는 상수 필드, 추상 메서드, 디폴트 메서드, 정적 메서드, 메서드, 정적 메서드를 사용할 수 있다. interface 인터페이스명{}public inter..
2024.08.15 -
[Java] 상속 2
강제타입전환자식 타입은 부모 타입으로 자동 변환되지만, 반대로 부모 타입은 자식 타입으로 자동 변환되지 않는다. 대신 캐스팅 연산자로 강제 타입 전환을 할 수 있다. 자식 타입 변수 = (자식 타입) 부모 타입 객체; 자식 객체가 부모 타입으로 자동 변환된 후 다시 자식 타입으로 변환할 때 강제 타입 변환을 사용할 수 있다. Parent parent = new Child();Child child = (Child) parent; 자식 객체가 부모 타입으로 자동 변환하면 부모 타입에서 선언한 필드와 메서드만 사용이 가능하다. 자식 타입에 선언된 필드와 메서드를 사용하려면 강제 타입 변환을 사용해야 한다. 다형성다형성이란 사용 방법은 동일하지만 실행 결과가 다양하게 나오는 성질을 말한다. 동일한 메서드를 상..
2024.08.14 -
[Java] 객체 지향 연습 정답
1. 다음과 같은 실행 결과를 얻도록 Student 클래스에 생성자와 info()를 추가하시오.public class Ex5_1 { public static void main(String[] args) { Student s = new Student ("홍길동", 1, 1, 100, 60 , 76); String str = s.info(); System.out.println(str); }}class Student{ String name; int ban, no, kor, eng, math; int sum; float aver; public Student(String name, int ban, int no, int kor, int eng, int math) { this.nam..
2024.08.13 -
[Java] 객체 지향 연습 문제
1. 다음과 같은 실행 결과를 얻도록 Student 클래스에 생성자와 info()를 추가하시오.public class Ex5_1 { public static void main(String[] args) { Student s = new Student ("홍길동", 1, 1, 100, 60 , 76); String str = s.info(); System.out.println(str); }}//홍길동, 1, 1, 100, 60, 76, 236, 78.7 2. getTotal()과 getAverage()를 추가하시오. public class Ex5_2 { public static void main(String[] args) { Student s = new Student();..
2024.08.13