Override 는 부모(슈퍼) 클래스에 존재하는 필드나 메소드를 자식(서브) 클래스에서 재정의하여 사용할 수 있는것을 말합니다. 바로 예제 일단 Animal Class (부모클래스) public class Animal { // 부모 클래스이다. private String food; // 음식 private String sleep; // 잔다 // Construct / Set, Get / toString public Animal(String food, String sleep) { super(); // 부모클래스의 메소드값을 가져오기 위해서 선언 this.food = food; this.sleep = sleep; } public String getFood() { return food; } public vo..
이번에는 java의 상속이라는 특성을 사용해 아주아주아주 간단한 게임을 만들어 보겠습니다. 게임의 내용은 옛날의 다마고치를 생각하면 될거 같은데 캐릭터 키우기 입니다. 일단은 부모클래스부터 작성 하겠습니다. public class Poket { public String race; // 종족 public String name; // 캐릭터 이름 public int age; // 나이 public int power; // 파워 public int energy; // 에너지 int cnt; public Poket() // 생성자 { System.out.println("시작"); } public void eat() // 밥먹기 { energy += 15; // 에너지 15씩 증가 cnt++; // cnt는 1씩..
지난번에 이어서 객체지향 언어를 계속 공부하고 있습니다. 이번에는 조금 더 다양하게 2개의 인스턴스를 생성해봤습니다. public class Car { // Car라는 클래스에 마찬가지로 객체를 선언 String color; boolean power; int channel; void power() { power = !power; } void channelUp() { ++channel; } void channelDown() { --channel; } } class CarTest2 { public static void main(String args[]) { Car c1 = new Car(); // c1도 Car의 인스턴스를 가지고있다/ Car c2 = new Car(); // c2도 마찬가지 System.o..
객체지향 프로그래밍 이란? 절차지향언어와는 조금은 다른 개념으로 객체와 클래스를 가지고 프로그램을 조금 더 유기적으로 구성하는 것 이다. 객체지향언어의 가장 큰 장점은 코드를 언제든지 가져다 쓸 수 있다는 점과 절차지향언어에 비해 유지보수가 용이하다는 것이다. 이런 객체지향의 특징을 가장 잘 보여주는 문구들이 상속, 추상화, 다형성 등이 있는데 이것들은 나중에 천천히 공부 해야겠다. 우선 클래스와 객체 대해 알아보자 클래스는 객체를 모아놓고 정의한 것이며 클래스는 객체를 생성하는데 사용되며, 객체는 클래스에 정의된 대로 생성된다. 객체는 무엇일까 객체란 클래스에 정의된 내용으로 메모리에 생성된 것을 말한다. 클래스와 객체를 가장 쉽게 나타내는 것이 설계도랑 비교 하는 것들인데 클래스는 제품설계도, 객체는..
Method란 입력값이 있고 그 입력값을 가지고 무언가 결과를 도출 하는 것이다. 입력값이 없을때는 그 함수 전체를 반환하게 된다. public static void count() { // 변수명 뒤에 중괄호를 사용하여 메소드를 생성한다. 정의 // 현재는 ()안에 입력값이 없다. int i = 0; while (i < 5) { System.out.printf(i); i++; } } public static void main(String[] args) { // main함수에서 위에서 선언한 메소드를 실행한다. count(); // 괄호 뒤에 아무것도 없으므로 함수 전체를 호출한다. } 결과값은 012345 하지만 메소드안에 입력값이 있다면 이를 매개변수라고 한다. public static void cou..
Array의 경우 for 구문과 상당히 궁합이 잘맞는다. for문을 사용하면 배열의 값들을 하나하나 출력하지 않아도 되기 때문이다. String[] list1 = { "가", "나", "다" }; // list1에 가, 나, 다의 값을 집어 넣어준다. for (int i = 0; i < list1.length; i++) { // list1.length값은 2이다. 즉 for문을 3번 돌리겠다는 뜻 String list = list1[i]; // list에 list1의 값을 담아준다. System.out.println(list); // 출력해준다. } 결과값은 가나다 이번에는 each문도 사용해보자. String[] list2 = { "라", "마", "바" }; // 위와 마찬가지로 라,마,바를 배열에 ..
배열은 변수형[] 배열이름 = {"객체1", "객체2", "객체3", "객체4"}; 방식으로 선언하여 사용한다. ! 숫자의 경우는 "" 가 없어도 된다. 아래 예제는 배열의 크기를 서로 비교해서 가장 큰수와 가장 작은 수를 표시하는 예제이다. public static void main(String[] args) { int[] score = {79, 88, 91, 33, 100, 55, 95}; // 비교할 숫자들을 배열로 선언헌다. (숫자의 경우 ""가 필요없다.) int max = score[0]; // 배열의 첫 번째 값으로 최대값을 초기화한다. int min = score[0]; // 마찬가지 for(int i=1; i max) { ..