반응형 SMALL 분류 전체보기120 학생 정보 관리 시스템 목표Student 클래스를 만들어 학생 정보(이름, 학번, 점수 등) 저장ArrayList로 여러 학생 저장메뉴를 통해 학생 정보 추가 / 전체 출력 / 검색 / 종료 기능 구현1. Student 클래스public class Student { String name; String studentId; int score; public Student(String name, String studentId, int score) { this.name = name; this.studentId = studentId; this.score = score; } public void printInfo() { System.out.println("이.. 2025. 4. 13. 강아지/고양이 클래스 만들기 목표Animal이라는 부모 클래스를 만들고Dog, Cat 클래스가 이를 상속각각 고유한 sound() 메서드를 오버라이딩해서 소리를 다르게 출력1. Animal 부모 클래스public class Animal { String name; public Animal(String name) { this.name = name; } void sound() { System.out.println("동물이 소리를 냅니다."); } void eat() { System.out.println(name + "가 밥을 먹습니다."); }}2. Dog 클래스 – Animal 상속public class Dog extends Animal { public D.. 2025. 4. 13. 부모 타입으로 자식 객체 다루기 개념 요약: 부모 타입으로 자식 객체를 다루기부모클래스 참조변수 = new 자식클래스();**업캐스팅(Upcasting)**이라고도 부르며, 자동으로 형변환됩니다.부모 클래스에 정의된 공통 기능만 사용 가능오버라이딩된 메서드는 자식 클래스의 메서드가 실행됨 → 동적 바인딩예제: Animal → Dog, Cat부모 클래스public class Animal { void sound() { System.out.println("동물이 소리를 냅니다."); }}자식 클래스public class Dog extends Animal { @Override void sound() { System.out.println("멍멍!"); }}public class Cat exte.. 2025. 4. 13. 오버라이딩 개념 오버라이딩(Overriding)이란?부모 클래스의 메서드를 자식 클래스에서 같은 이름, 같은 매개변수, 같은 리턴타입으로 재정의하는 것기존 기능을 자식 클래스에 맞게 변경할 수 있음@Override 어노테이션을 붙여 명확하게 표시하는 것이 좋음오버라이딩의 조건 조건 설명 메서드 이름같아야 함매개변수개수, 순서, 타입 동일해야 함리턴 타입동일해야 함접근 제어자부모보다 더 넓은 범위만 가능예외 처리부모보다 더 좁거나 동일한 수준만 가능예제: 부모 메서드 오버라이딩하기부모 클래스public class Animal { void sound() { System.out.println("동물이 소리를 냅니다."); }}자식 클래스public class Dog extends Animal { .. 2025. 4. 13. extends 키워드로 상속하기 extends란?자바에서 한 클래스가 다른 클래스를 상속할 때 사용하는 키워드자식 클래스가 부모 클래스의 **필드(속성), 메서드(기능)**를 그대로 가져올 수 있음기본 문법class 부모클래스 { // 속성, 메서드}class 자식클래스 extends 부모클래스 { // 추가 기능 or 오버라이딩}예제: Animal → Dog 상속부모 클래스public class Animal { String name; void eat() { System.out.println(name + "가 먹습니다."); }}자식 클래스public class Dog extends Animal { void bark() { System.out.println(name + "가 멍멍.. 2025. 4. 13. 인스턴스 메서드 vs 클래스(static) 메서드 개념 요약 구분 인스턴스 메서드 클래스(static) 메서드 정의 방법void method()static void method()호출 방법객체명.메서드()클래스명.메서드()객체 필요 여부필요함 (new)필요 없음사용하는 변수인스턴스 변수 사용 가능인스턴스 변수 사용 불가대표 예s1.getName()Math.random(), Integer.parseInt()인스턴스 메서드 예제public class Person { String name; public Person(String name) { this.name = name; } // 인스턴스 메서드 public void sayHello() { System.out.println("안녕하세요! 저는 " + nam.. 2025. 4. 13. 이전 1 ··· 12 13 14 15 16 17 18 ··· 20 다음 LIST