Java - 객체(1)

2022. 4. 21. 16:58Java

1.고객정보를 출력하는 예제

import java.util.*;


public class Main {
    public static class Order{
        int orderNum;
        String customerID;
        String orderDate;
        String customerName;

        public void OrderInfo(){
            System.out.println("주문번호 : "+ orderNum);
            System.out.println("주문날짜 : "+ orderDate);
            System.out.println("고객아이디 : "+ customerID);
            System.out.println("고객명 : "+ customerName);

        }

    }
        public static void main(String[] args) {
            Order or1 = new Order();
            or1.orderNum = 123234;
            or1.orderDate= "2022년 4월 21일";
            or1.customerID="dusen0529";
            or1.customerName="최인호";

            or1.OrderInfo();
        }
    }


출력 결과

주문번호 : 123234
주문날짜 : 2022년 4월 21일
고객아이디 : dusen0529
고객명 : 최인호

/****************************************************************************************************/

2.점수 -> 학점 프로그램

public class Main {


    public static class Subject{ //점수와 과목명이라는 멤버를 가진 객체 Subject 선언
        int score;
        String name;

        public Subject(){ //생성자

        }

        public Subject(String name){ //생성자
            this.name = name;
        }

        public Subject(String name, int score){ //생성자
            this.name = name;
            this.score = score;
        }

        public void setName(String name){ //과목이름 설정하기
            this.name = name;
        }

        public void setScore(int score){ //점수 설정하기
            this.score= score;
        }

        public boolean isVaild(){  //입력받은 점수가 유효한지 판단
            if(this.score>=0&&this.score<=100){
                System.out.println("점수가 유효합니다");
                return true;
            }
            else{
                System.out.println("유효하지 않은 점수입니다.");
                return false;
            }
        }

        public char grade(){ //성적을 등급으로 바꿔주는 함수
            if(this.score<=100&&this.score>=90){
                return 'A';
            }
            else if(this.score<=89&&this.score>=80){
                return 'B';
            }
            else if(this.score<=79&&this.score>=70){
                return 'C';
            }
            else if(this.score<=69&&this.score>=60){
                return 'D';
            }
            else return 'F';

        }
        

    }




        public static void main(String[] args) {
            Subject sub1 = new Subject();
            Subject sub2 = new Subject("국어");
            Subject sub3 = new Subject("수학",80);

            sub1.setName("영어");
            sub1.setScore(70);

            sub1.isVaild();

            System.out.println(sub1.grade());
            
            
            
        }
    }


출력 결과

점수가 유효합니다
C

/****************************************************************************************************/

3.교통수단 객체

import java.util.*;


public class Main {

    public static class Student{ //학생 객체 선언
        String studentName; //학생이름
        int money; //가진 돈

        public Student(){
            this.studentName="이름 없음";
            this.money=0;
        }

        public Student(String studentName, int money){
            this.studentName = studentName;
            this.money = money;
        }

        public void takeBus(Bus bus){ //버스를 탄다 버스에 돈이 증가하고 학생의 돈은 감소
            System.out.println(this.studentName+"님이 버스를 탑니다");
            bus.take(1000);
            this.money-=1000;
        }
        public void takeTaxi(Taxi taxi){//택시를 탄다 택시에 돈이 증가하고 학생의 돈은 감소
            System.out.println(this.studentName+"님이 택시를 탑니다");
            taxi.take(10000);
            this.money -= 10000;
        }
        public void takeSubway(Subway subway){ //지하철을 탄다 지하철에 돈이 증가하고 학생의 돈은 감소
            System.out.println(this.studentName+"님이 지하철을 탑니다");
            subway.take(1500);
            this.money -= 1500;
        }

        public void showInfo(){
            System.out.println(studentName+"님의 남은 돈은 "+money + "입니다");
        }

    }

    public static class Bus{
        int busNumber;
        int passengerCount;
        int money;
            public Bus(int busNumber){
                this.busNumber = busNumber;
            }
            public void take(int money){
                this.money += money;
                passengerCount++;
            }
            public void showInfo(){
                System.out.println(busNumber+"버스의 승객은 "+passengerCount+"명이고 수입은 "
                + money + "입니다");
            }
    }

    public static class Taxi{
        int taxiNumber;
        int passengerCount;
        int money;
            public Taxi(int taxiNumber){
                this.taxiNumber=taxiNumber;
            }
            public void take(int money){
                this.money += money;
                passengerCount++;
            }
            public void showInfo(){
                System.out.println(taxiNumber+"택시의 승객은 "+passengerCount+"명이고 수입은 "
                        + money + "입니다");
        }
    }

    public static class Subway{
        String lineNumber;
        int passengerCount;
        int money;
            public Subway(String lineNumber){
                this.lineNumber = lineNumber;
            }
            public void take(int money){
                this.money += money;
                passengerCount++;
            }
            public void showInfo(){
            System.out.println(lineNumber+"호선 지하철의 승객은 "+passengerCount+"명이고 수입은 "
                    + money + "입니다");
        }
    }


        public static void main(String[] args) {

            Student James = new Student("James", 5000);
            Student Tomas = new Student("Tomas", 10000);
            Student Edward = new Student("Edward", 20000);

            Bus bus200 = new Bus(200); //200번 버스 객체 생성
            James.takeBus(bus200); //제임스가 200번 버스에 탑승
            James.showInfo();
            bus200.showInfo();

            Subway subwayGreen = new Subway("2호선"); //subwayGreen호선 지하철 객체 생성
            Tomas.takeSubway(subwayGreen); //토마스가 지하철에 탑승
            Tomas.showInfo();
            subwayGreen.showInfo();

            Taxi taxi4534 = new Taxi(4534); //4534번 택시 객체 생성
            Edward.takeTaxi(taxi4534); //에드워드가 택시 탑승
            Edward.showInfo();
            taxi4534.showInfo();

        }
    }


출력 결과

James님이 버스를 탑니다
James님의 남은 돈은 4000입니다
200버스의 승객은 1명이고 수입은 1000입니다
Tomas님이 지하철을 탑니다
Tomas님의 남은 돈은 8500입니다
2호선호선 지하철의 승객은 1명이고 수입은 1500입니다
Edward님이 택시를 탑니다
Edward님의 남은 돈은 10000입니다
4534택시의 승객은 1명이고 수입은 10000입니다

 

 

4. 객체배열

import java.util.Scanner;

class Circle{
    int radius;
    public Circle(int radius){
        this.radius = radius;
    }
    public double getArea(){
        return radius*radius*3.14;
    }
}
public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        Circle[] c;
        c = new Circle[5];
        for(int i=0;i<c.length;i++){
            int a = scanner.nextInt();
            c[i]= new Circle(a);
        }
        for(int i=0;i<c.length;i++){
            System.out.println((int)c[i].getArea());
        }
    }
}

출력 결과

69
49
24
46
15

> Task :Main.main()
14949
7539
1808
6644
706

 

5. 객체 배열

import java.util.Scanner;

class Book{
    String title, author;
    public Book(String title, String author){
        this.title = title;
        this.author = author;
    }
}
public class Main {
    public static void main(String[] args) {
        Book [] book = new Book[2];

        Scanner scanner = new Scanner(System.in);
        for (int i=0; i<book.length;i++){
            System.out.print("제목>>");
            String title = scanner.nextLine();
            System.out.print("작가>>");
            String author = scanner.nextLine();
            book[i]=new Book(title, author);
        }
        for(int i=0;i< book.length;i++){
            System.out.print("("+book[i].title + " " + book[i].author+")\t");
        }
    }
}

 

출력 결과

제목>>반례제시
작가>>조지훈
제목>>야미데이
작가>>최인호
(반례제시 조지훈)	(야미데이 최인호)

'Java' 카테고리의 다른 글

Java - 패키지와 모듈화 / Wrapper  (0) 2022.06.21
Java - 상속/인터페이스/추상클래스  (0) 2022.06.21
Java - 클래스와 객체  (0) 2022.06.20
Java - 컬렉션  (0) 2022.06.19
Java - 객체(2)  (1) 2022.04.25