-
EX_01. BankBook
1-1. BankBook
public class BankBook { //통장설계도면 만들기 //필드 //private >> 외부 클래스에서 접근이 불가능하게 하는 접근제한자 private int money; //메소드 public void deposit(int money) { this.money += money; //this 키워드 //-현재 설계도면(나 자신)을 지칭하는 키워드 //인스턴스 자신을 가리키는 키워드 } public void withdraw(int money) { this.money -= money; } public void showMoney() { System.out.println("잔액은"+money+"원 입니다."); } }
1-2. BankBookMain
public class BankBookMain { public static void main(String[] args) { //통장 생성 BankBook b = new BankBook(); b.deposit(1500); b.showMoney(); b.deposit(700); b.showMoney(); b.withdraw(500); b.showMoney(); } }
EX_02. 학생관리 프로그램
2-1. Student
package 학생관리시스템; public class Student { private String name; private String number; private int age; private int scoreJava; private int scoreWeb; private int scoreAndroid; //생성자 만들기 //alt + shift + s public Student(String name, String number, int age, int scoreJava, int scoreWeb, int scoreAndroid) { this.name = name; this.number = number; this.age = age; this.scoreJava = scoreJava; this.scoreWeb = scoreWeb; this.scoreAndroid = scoreAndroid; } // public Student() { // // } // 메소드 오버로딩(method overloading) // - 메소드의 매개변수 개수, 타입 다르게 하면서 중복으로 정의하는 것(동일한 이름을 부여) // 접근제한자 // public : 내부/외부 어디서든 접근이 가능한 기능 //private : 현재 클래스 내에서만 접근이 가능 public String getName() { return name; } public void setName(String name) { //클래스 name에 받아온 name을 저장 this.name =name; } public String getNumber() { return number; } public void setNumber(String number) { this.number = number; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } public int getScoreJava() { return scoreJava; } public void setScoreJava(int scoreJava) { this.scoreJava = scoreJava; } public int getScoreWeb() { return scoreWeb; } public void setScoreWeb(int scoreWeb) { this.scoreWeb = scoreWeb; } public int getSocoreAndroid() { return scoreAndroid; } public void setSocoreAndroid(int scoreAndroid) { this.scoreAndroid = scoreAndroid; } //기능 //show() public void showStudent() { System.out.println(name+"님 안녕하세요."); System.out.println("["+number+" "+age+"살]"); System.out.println(name+"님의 Java 점수는"+scoreJava+"입니다."); System.out.println(name+"님의 Web 점수는"+scoreWeb+"입니다."); System.out.println(name+"님의 Android 점수는"+scoreAndroid+"입니다."); } }
2-2. StudentMain
package 학생관리시스템; public class Main { public static void main(String[] args) { Student s1 = new Student("홍길동", "20220324", 26, 90, 66, 11); Student s2 = new Student("홍길은", "20200878", 20,50,99,77); //생성자(constructor) // - 객체를 생성하는 순간(new) 실행되는 메소드 // 1 - 매개변수를 아무것도 받지 않는 생성자 > 기본 생성자 // - 생략이 가능 // 2 - 생성자는 매소드다. // 3 - 클래스의 이름과 생성자명은 일치한다. // 4 - 리턴타입을 작성하지 않는다.(void x) // 5 - 기본생성자는 새로운 생성자를 만들면 덮어씌워진다 // (오버로딩) System.out.println(s1.getName()); System.out.println(s2.getName()); System.out.println(s1.getNumber()); s1.showStudent(); System.out.println("=============================="); s2.showStudent(); } }