본문 바로가기

JAVA/국비 공부

(118)
3월16일수업(캡슐화) 캡슐화 객체지향프로그래밍에서는 우리가 만든 클래스의 세부적 내용을 굳이 바깥에서 알 필요 없다고 보고 따라서 우리 클래스 안에 모든 클래스 안에 모든 필드 그리고 바깥이 몰라도 되는 메소드의 경우 아예 볼 수 없게 접근제한을 하게 된다. 하지만 우리가 필드에 접근제한자를 사용하게 된다면? 외부 클래스에서 객체를 생성하더라도 필드에 값을 직접 넣어줄 수 없게 된다. 대신 우리가 메소드를 만들어서 해당 메소드를 사용하여 간접적으로 값을 넣어주거나 아니면 호출하게 된다. private으로 설정된 필드에 값을 넣을 때에는 우리가 setter 메소드를 사용하게 된다. setter 메소드는 다음과 같다 public void set필드명(필드타입 필드명){ this.필드명 = 필드명; } //Student Class..
3월 19일 수업(예제1) package day0316; // 캡슐화가 적용된 Student 클래스를 사용하여 // 학생 5명을 관리학 만약 똑같은 이름과 번호를 가진 학생은 또다시 입력할 수 없는 // 성적관리 프로그램을 작성하시오. import java.util.Scanner; import util.ScannerUtil; import util.ArrayUtil; public class GrandeBook02 { private static final int SIZE_STUDENT = 5; private static final int SCORE_MIN = 0; private static final int SCORE_MAX = 100; public static void main(String[] args) { Scanner scann..
3월16일수업(예제) package day0316; // 우리가 기존에 만들었던 Dog 클래스와 ArrayList를 사용하여 // 강아지 임시 보호소 프로그램을 만들어보세요 // 기본적을 ArrayList안에 3마리의 강아지를 임의로 넣고 while을 시작하세요 // 1. 잃어버린 개 등록 // 2. 일치하는 개 찾기 // 3. 주인 찾은 개 목록에서 삭제 // 4. 종료 // 총 4가지의 기능이 있습니다. import day0315.Dog; import java.util.ArrayList; import java.util.Scanner; import util.ScannerUtil; public class DogShelter { public static void main(String[] args) { Scanner scanne..
3월15일 수업(예제4) package day0315; import java.util.Scanner; import util.ScannerUtil; public class DogEx01 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); // Dog 클래스 객체 생성 Dog d = new Dog(); // d의 필드에 값 입력 d.name = "예삐"; d.id = "01A0001"; d.breed = "푸들"; d.age = 10; System.out.println("강아지 찾아드립니다."); System.out.println("현재 우리 센터에서 임시 보호중인 강아지의 마릿 수는 1마리입니다."); Dog d2 = new Dog..
3월15일 수업(예제3) package day0315; // 강아지 클래스 // 필드: 이름, 등록번호(String), 품종, 나이 // 메소드: 사료먹기(사료종류), 짖기, 자기(), 객체간 비교 public class Dog { //1. 필드 String name; String id; String breed; int age; //2. 메소드 //1. 사료먹기 public void eat(String food) { System.out.println(food+"를 먹는다"); } public void bark() { System.out.println("멍멍"); } public void sleep() { System.out.println("쿨쿨"); } public boolean equals(Object obj) { if(obj..
3월15일(예제2) 객체를 사용한 성적 관리 프로그램 단. 지금 당장은 한명의 정보만 입력하고 출력해보자. package day0315; import util.ScannerUtil; import java.util.Scanner; public class GradeBook02 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); // 정보를 저장할 Student 객체를 선언과 초기화 Student s = new Student(); // 객체의 필드 혹은 메소드를 접근할때에는 // 객체. 으로 접근하게 된다. // 그래서 . 은 자바에서는 접근 연산자라고 부른다. s.id = ScannerUtil.nextInt(scanner, "번..
3월15일 (예제1) 성적 관리 프로그램을 인원 제한이 없는 프로그램으로 ArrayUtil을 사용하여 만들어보세요. package day0315; import java.util.Scanner; import util.ScannerUtil; import util.ArrayUtil; public class GradeBook01 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); // 번호를 담당하는 배열 idArray int[] idArray = new int[0]; // 이름을 담당하는 배열 nameArray String[] nameArray = new String[0]; // 점수를 담당하는 배열 int[][] scoreArra..
3월 15일 수업(예제) package day0315; public class StudentEx01 { public static void main(String[] args) { Student s = null; // Student라는 객체 s = new Student(); // 값을 초기화해줌으로서 생성 s.showInfo(); s.id = 1; s.name = new String("조재영"); s.korean = 80; s.english = 90; s.math = 74; s.showInfo(); System.out.println("-----------------"); Student s2 = new Student(); s2.id = 1; s2.name = new String("조재영"); s2.korean = 80; s2.engl..