학생에 대한 속성을 다음과 같이 작성한다.
접근지정자 |
자료형 |
변수이름 |
설명 |
예 |
private |
String |
name |
이름 |
홍길동 |
private |
int |
age |
나이 |
25 |
private |
int |
studentNumber |
학번 |
20041234 |
private |
boolean |
sex |
성별 (true면 남자, false면 여자) |
true |
위를 참고하여 이름, 나이, 학번, 성별을 직접 입력받아 출력해볼것이다.
데이터필드(r2)
package week8;
public class r2 {
private String name;
private int age;
private int studentNumber;
private boolean sex;
}
<< getter, setter 메소드를 작성하자 >>
일반적으로 이러한 필드(변수)들은 직접적으로 접근하지 않으며, 접근하게 해서도 안 된다.(캡슐화에 대한 설명을 참조) 그러므로 이러한 필드를 접근하기 위해서 public으로 선언된 getter(접근자, 필드의 값을 가져옴), setter(설정자, 필드에 값을 저장) 메소드를 작성해야 한다.
1. 코드에디터에서 마우스 오른쪽 버튼을 클릭해보자.
2. 팝업메뉴가 출력되면 ‘Source -> Generate Getters And Setters’ 를 클릭한다.
Select All을 선택하고 Generate 버튼을 클릭하면 메소드가 생성된다.
package week8;
public class r2 {
private String name;
private int age;
private int studentNumber;
private boolean sex;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public int getStudentNumber() {
return studentNumber;
}
public void setStudentNumber(int studentNumber) {
this.studentNumber = studentNumber;
}
public boolean isSex() {
return sex;
}
public void setSex(boolean sex) {
this.sex = sex;
}
}
본문클래스(r2)
package week8;
import java.util.*;
public class r2test {
public static void main(String[] args) {
// TODO Auto-generated method stub
r2 ss=new r2();
Scanner scan=new Scanner(System.in);
System.out.print("이름 을 입력해주세요 : ");
String names=scan.next();
ss.setName(names);
System.out.print("나이를 입력하세요 :");
int old=scan.nextInt();
ss.setAge(old);
System.out.print("성별 남자면(1) 여자면 (숫자아무키)");
int xxx=scan.nextInt();
System.out.print("학번을 입력하세요");
int snum=scan.nextInt();
ss.setStudentNumber(snum);
System.out.println("이름 :"+ss.getName());
System.out.println("나이 :"+ss.getAge());
System.out.println("학번 :"+ss.getStudentNumber());
if (xxx==1) {
ss.setSex(true);
ss.isSex();
System.out.println("남자임");
}
else {
ss.setSex(false);
ss.isSex();
System.out.println("여자임");
}
}
}
실행화면