풀스택 개발자 과정 33일차 +@

너구·2026년 6월 23일

풀스택 성장과정

목록 보기
34/84

자바 객체지향이 아직 나에겐 너무 어려워서 자습시간 때 공부를 하는 시간을 가져보았다.

예제 1

public String getGrade() {
        if (score >= 90) {
            return "A";
        } else if (score >= 80) {
            return "B";
        } else if (score >= 70) {
            return "C";
        } else if (score >= 60) {
            return "D";
        } else {
            return "F";
        }
    }

예제 2

package practice.person2;

public class Person {
    
    private String name;
    private int age;

    public Person(String name, int age) {
        this.name = name;
        this.age = age;
    }

    public void introduce() {
        System.out.println("이름: " + name);
        System.out.println("나이: " + age);
    }

    public static void main(String[] args) {
        
        Person p = new Person("철수", 20);

        p.introduce();
    }
}

예제 3

package practice.student;

public class Student {
    
    private String name;
    private int score;

    public Student(String name, int score) {
        this.name = name;
        this.score = score;
    }

    public void introduce() {
        System.out.println("이름: " + name);
        System.out.println("점수: " + score);
    }

    public void changeScore(int score) {
        this.score = score;
    }

    public static void main(String[] args) {
        
        Student s1 = new Student("철수", 80);
        Student s2 = s1;

        s2.changeScore(100);

        s1.introduce();
        s2.introduce();
    }
}

예제 4

package practice.student2;

public class Student {

    private String name;
    private int score;

    public Student(String name, int score) {
        this.name = name;
        this.score = score;
    }

    public void introduce() {
        System.out.println("이름: " + name);
        System.out.println("점수: " + score);
    }

    public void changeScore(int score) {
        this.score = score;
    }

    public static void main(String[] args) {

    Student s1 = new Student("철수", 80);
    Student s2 = new Student("영희", 90);

    Student s3 = s1;

    s2.changeScore(100);
    s3.changeScore(50);

    s1.introduce();
    s2.introduce();
    s3.introduce();
}
    
}

예제 5

package practice.student3;

public class Student {
    
    private String name;
    private int score;

    public Student(String name, int score) {
        this.name = name;
        this.score = score;
    }

    public void introduce() {
        System.out.println("이름: " + name);
        System.out.println("점수: " + score);
    }

    public void changeScore(int score) {
        System.out.println("[점수 변경]");
        System.out.println(this.score + " -> " + score);
        this.score = score;
    }

    public boolean isPass() {
        return score >= 60;
    }

    public static void main(String[] args) {
        
        Student s1 = new Student("철수", 80);

        s1.introduce();
        s1.changeScore(100);
        System.out.println("합격 여부: " + s1.isPass());
    }
}

예제 6

package practice.student4;

public class Student {

    private String name;
    private int score;

    public Student(String name, int score) {
        this.name = name;
        this.score = score;
    }

    public void introduce() {
        System.out.println("이름: " + name);
        System.out.println("점수: " + score);
    }

    public void changeScore(int score) {
        this.score = score;
    }

    public boolean isHigherThan(Student other) {
        return this.score > other.score;
    }
    
    public static void main(String[] args) {

    Student s1 = new Student("철수", 80);
    Student s2 = new Student("영희", 90);
    Student s3 = new Student("민수", 70);

    s1.changeScore(85);

    System.out.println("s1 > s2 ? " + s1.isHigherThan(s2));
    System.out.println("s2 > s3 ? " + s2.isHigherThan(s3));
    System.out.println("s3 > s1 ? " + s3.isHigherThan(s1));
    }
}

예제 7

package practice.student5;

public class Student {

    private String name;
    private int score;

    public Student(String name, int score) {
        this.name = name;
        this.score = score;
    }

    public void introduce() {
        System.out.println("이름: " + name);
        System.out.println("점수: " + score);
    }

    public String getGrade() {
        if (score >= 90) {
            return "A";
        } else if (score >= 80) {
            return "B";
        } else if (score >= 70) {
            return "C";
        } else if (score >= 60) {
            return "D";
        } else {
            return "F";
        }
    }

    public void printResult() {
        System.out.println("이름: " + name);
        System.out.println("등급: " + getGrade());
    }
    
    public static void main(String[] args) {

    Student s1 = new Student("철수", 85);
    Student s2 = new Student("영희", 72);
    Student s3 = new Student("민수", 59);

    s1.printResult();
    s2.printResult();
    s3.printResult();
}
}

예제 8

package practice.student6;

public class Student {
    
    private String name;
    private int score;

    public Student(String name, int score) {
        this.name = name;
        this.score = score;
    }

    public String getGrade() {
        if (score >= 90) {
            return "A";
        } else if (score >= 80) {
            return "B";
        } else if (score >= 70) {
            return "C";
        } else if (score >= 60) {
            return "D";
        } else {
            return "F";
        }
    }

    public void printInfo() {
        System.out.println("이름: " + name);
        System.out.println("등급: " + getGrade());
    }

    public static void main(String[] args) {

    Student[] students = {
        new Student("철수", 95),
        new Student("영희", 82),
        new Student("민수", 77),
        new Student("지훈", 58),
        new Student("수진", 90)
    };

    for (int i = 0; i < students.length; i++) {
        if (students[i].getGrade().equals("A")) {
            students[i].printInfo();
        }
    }
}
}

마무리

AI 도움 없이 혼자서 작성하려고 많은 노력을 했다.
아직은 미숙한 실력이지만 조금씩 이해가 되고 한 줄씩 작성할 수 있게 되면서 뿌듯한 마음이 생긴다.
하나하나 작성할 때마다 많은 시간이 들어 많은 문제를 풀진 못하였지만 앞으로 더 열심히 풀어서 이런 기초적인 문제는 후딱 쓸 수 있게 됐으면 좋겠다.

0개의 댓글