본문 바로가기

Java

(130)
[Java] 도형의 성질을 이용하여 크기 조절하기(인터페이스) 도형의 성질 중에는 넓이과 둘레를 알아야한다. 그런 성질을 알 수 있는 인터페이스를 작성한다. . . package InterfaceGeometric; public interface GeometricObject { public double getPerimeter(); public double getArea(); } . . 상위 인터페이스를 상속받을 원 클래스를 만든다. . . package InterfaceGeometric; import java.math.*; public class Circle implements GeometricObject{ protected double radius = 1.0; public Circle(double radius) { this.radius = radius; } publ..
[Java] 점과 원 위치 이동하는 절차 인터페이스로 만들기 좌표평면에서 점이 이동하기 위해서는 위, 아래, 왼쪽, 오른쪽 이동메소드가 필요하다. 상위인터페이스에 만들어주도록하자. . . package InterfaceMoveable; public interface Moveable { public abstract void moveUp(); public abstract void moveDown(); public abstract void moveLeft(); public abstract void moveRight(); } . . 좌표평면은 컴퓨터 화면 기준으로 한다. 왼쪽 상단 부분을 (0,0)으로 시작하여 오른쪽과 아래로 가는 것이 +이다. . . 점 이동 클래스부터 구현해본다. . . package InterfaceMoveable; public class Move..
[Java] 도형 그리기 인터페이스 도형을 그리기 위해서는 도형의 색상이 필요하다. 도형 그리기에 알맞는 색상 인터페이스를 만든다. . . package InterfaceDrawable; public interface Drawable { int RED = 1; int GREEN = 2; int BLUE = 3; int BLACK = 4; int WHITE = 5; public abstract void draw(int color); } . . 인터페이스는 모두 abstract로 선언되어있기 때문에 implements 된 클래스는 인터페이스에 있는 메소드들을 무조건 오버라이딩해야한다. . . Drawable을 implements할 도형 클래스를 만든다 좌표와 크기와 색상을 받는다. . . circle class package Interface..
[Java] 원과 직사각형 추상클래스로 상속받아 구현하기 원과 직사각형의 넓이와 둘레를 구하는 식을 구현해보자. 그러면 원과 직사각형의 상위 클래스인 Shape 클래스를 만든다. . . package AbstractShape; public abstract class Shape { String color; boolean filled; public Shape() {} public Shape(String color, boolean filled) { this.color = color; this.filled = filled; } public String getColor() { return color; } public void setColor(String color) { this.color = color; } public boolean isFilled() { return..
[Java] 동물 추상클래스로 상속받아 구현하기 다리 갯수로 상속하는 동물 추상클래스를 만든다. . . package AbstractAnimal; public abstract class Animal { protected int leg; public Animal(int leg) { this.leg = leg; } public abstract void move(); public abstract void eat(); } . . 동물은 움직이고 먹는 메소드를 만들어야 하므로 추상 클래스에서 move()와 eat()을 만든다. 추상클래스해서는 메소드 앞에 abstract가 있어야한다. 그리고 중괄호를 생략하고 세미콜론';'을 붙인다. . . 그럼 처음으로 다리가 8개인 거미 클래스를 만들어보자 . . package AbstractAnimal; public cl..
[Java] 학생과 직장인 정보 표시하기(abstract 클래스 구현) 사람 이름을 담을 person 클래스를 만든다. abstract 클래스로 만든다. . . package AbstractPerson; public abstract class Person { private String name; public Person(String name) { this.name = name; } public String getName() {return this.name;} public String getDescription() { return getName(); } } . . Person 클래스를 상속 받을 직장인 클래스를 만든다. LocalDate를 사용하기 위해 java.time.LocalDate;를 import 해준다. abstract 클래스를 상속 받았기 때문에 상위 클래스에 있는..
[Java] 원의 중심과 원의 관계(상속과 클래스 배열 이용) 점의 좌표에 대한 클래스를 만든다. x좌표와 y좌표 따로 저장할 수 있어야하고 순서쌍으로도 가져올 수 있어야한다. 점과 점 사이의 거리 메소드를 작성한다. 이때 java.math를 import하여 그 안에 있는 메소드를 사용한다.(제곱근 메소드 squrt(숫자), 제곱 메소드 pow(밑, 지수)) 거리 메소드는 여러가지 경우가 있기에 현재 점과 다른 점 사이의 거리 현재 점과 다른 클래스 점 사이의 거리 현재 점과 원점(0, 0) 사이의 거리 메소드를 오버로딩 한다. . . package Mypoint; import java.math.*; public class MyPoint { private int x = 0; private int y = 0; public MyPoint() {} public MyPoi..
[Java] 동물 울음소리 (다형성(polymorphism) 이용) 상위 클래스를 여러가지 클래스로 상속할 수 있다, 다형성이란 상위클래스로 인스턴스를 만들고 하위클래스로 객체를 만들 수 있다. . . 상위클래스인 Animal 클래스를 만든다. package Animal; public class Animal { public Animal() {} public void makeNoise() { System.out.println("Bark"); } } . . Animal 클래스를 상속받을 하위 클래스 3개를 만든다. package Animal; public class Dog extends Animal{ public Dog() {} public void makeNoise() { System.out.println("멍멍"); } } package Animal; public cla..