본문 바로가기
Backend/JAVA

JAVA 실습. 클래스

by YERIEL_염주둥 2020. 4. 21.
728x90

실습 1. ACalculator 클래스를 생성하고 계산할 수 있는 메서드를 만들어 계산을 하고 그 결과 값을 반환하시오. 

  ** 리턴 있는 클래스 선언 호출 하기
  연산 : 10 + 20

 

package kr.or.ksmart;

class ACalculator{
	public int cal(int n1, int n2) {
		return n1 + n2;
		
	}
}

public class JavaBasicEx06 {

	public static void main(String[] args) {

		ACalculator sum = new ACalculator();
		System.out.println(sum.cal(10, 20));
		
	}

}

 

 

실습2. 위의 회원의 정보가 담긴 다차원 배열이 있다. memberInfoArray의 객체(Member) 배열에 회원정보를 담아라.

** 클래스 캡슐화, 배열, 다차원배열, 

 

package kr.or.ksmart;

class Member{
	private String name;
	private String age;
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public String getAge() {
		return age;
	}
	public void setAge(String age) {
		this.age = age;
	}
}

public class JavaBasicEx04 {

	public static void main(String[] args) {
		String[][] memberInfo = new String[][]{
			{"홍길동","20"},
			{"이순신","21"},
			{"고길동","25"}
		};
		//다차원 배열 값 접근하기
		//System.out.println(memberInfo.length);
		
		Member[] memberInfoArray = new Member[memberInfo.length];
		
		for(int i=0;i<memberInfo.length;i++) {
			/*String[] member = memberInfo[i];
			String name = member[0];
			String age = member[1];
			System.out.println(name +" -- " + age);*/
			
			Member member = new Member();
			member.setName(memberInfo[i][0]);
			member.setAge(memberInfo[i][1]);
			
			memberInfoArray[i] = member;
		}
		for(int i=0; i<memberInfoArray.length;i++) {
			Member member = memberInfoArray[i];
			System.out.println("memberInfoArray -> "+member.getName());
			System.out.println("memberInfoArray -> "+member.getAge());
		}
	}

}

 

 


실습 3. 아래의 회원정보가 있다. 회원정보를 MemberInfo 객체에 담고 memberInfoList에 저장한 후 결괏값을 출력하여라.

회원정보 : 홍길동, 고길동, 이순신

package kr.or.ksmart;

import java.util.ArrayList;
import java.util.List;

class MemberInfo{
	private String name;
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
}

public class JavaBasicEx05 {

	public static void main(String[] args) {

		List<MemberInfo> memberInfoList = new ArrayList<MemberInfo>(); //제네릭??
		MemberInfo member = new MemberInfo();
		member.setName("홍길동");
		memberInfoList.add(member);
		member = new MemberInfo();
		member.setName("고길동");
		memberInfoList.add(member);
		member = new MemberInfo();
		member.setName("이순신");
		memberInfoList.add(member);
		
		for(int i=0;i<memberInfoList.size();i++) {
			System.out.println(memberInfoList.get(i).getName());
		}
	}

}

 



실습4. ACalculator 클래스를 생성하고 계산할 수 있는 메서드를 만들고 아래의 연산을 처리한 후에 처리한 내용을 list 객체에 담아라

  연산 10+20, 20+50, 30+40

package kr.or.ksmart;

import java.util.ArrayList;
import java.util.List;

class ACalculator{
	private int cal;
	public int cal(int n1, int n2) {
		this.cal =  n1 + n2;
		return cal;
		
	}
	public int getCal() {
		return cal;
	}
}

public class JavaBasicEx06 {

	public static void main(String[] args) {

		List<ACalculator> list = new ArrayList<ACalculator>();
		
		sum = new ACalculator();
		sum.cal(10, 20);
		list.add(sum);
		
		sum =new ACalculator();
		sum.cal(20, 50);
		list.add(sum);

		sum =new ACalculator();
		sum.cal(30, 40);
		list.add(sum);
		
		for(int i=0;i<list.size();i++) {
			System.out.println(list.get(i).getCal());
		}
	}

}

 

ArrayList 배열에 값을 대입할때는 add 메서드. 
ArrayList 배열의 크기는 size 메서드.

 


실습 8. 회원가입을 한다는 가정하에, 다음의 클래스를 생성하고 각각 controller > service > dto 순으로 객체 전달하도록 하여라.

controller는 메인 메서드
service  MemberService 클래스 생성 - db에 등록이 완료되었을 경우 리턴값 1
dao MemberDao 클래스 생성 - db에 등록이 완료되었을 경우 리턴값 1
dto MemberDto 클래스 생성  
controller 에서 넘어온 parameter = userName : 홍길동, userAge : 20, userEmail : 'user@naver.com', userTel : 010-0000-0000

package kr.or.ksmart;

class MemberDto{
	private String userName;
	private String userAge;
	private String userEmail;
	private String userTel;
	public String getUserName() {
		return userName;
	}
	public void setUserName(String userName) {
		this.userName = userName;
	}
	public String getUserAge() {
		return userAge;
	}
	public void setUserAge(String userAge) {
		this.userAge = userAge;
	}
	public String getUserEmail() {
		return userEmail;
	}
	public void setUserEmail(String userEmail) {
		this.userEmail = userEmail;
	}
	public String getUserTel() {
		return userTel;
	}
	public void setUserTel(String userTel) {
		this.userTel = userTel;
	}
}

class MemberService{
	public int memberJoinProcess(MemberDto MemberDto) {
		MemberDao dao = new MemberDao();
		int ms= dao.memberJoinProcess(MemberDto);
		return ms;
	}
}

class MemberDao{
	public int memberJoinProcess(MemberDto MemberDto) {
		System.out.println(MemberDto.getUserName());
		System.out.println(MemberDto.getUserAge());
		System.out.println(MemberDto.getUserEmail());
		System.out.println(MemberDto.getUserTel());
		return 1;
	}
}

public class JavaBasicEx07 {
	public static void main(String[] args) {

		String userName = "홍길동";
		String userAge = "20";
		String userEmail = "user@naver.com";
		String userTel = "010-0000-0000";
		
		//서비스단 호출하여 결과값을 출력하여라. 
		//1. dto 객체 생성
		MemberDto dto = new MemberDto();
		dto.setUserName(userName);
		dto.setUserAge(userAge);
		dto.setUserEmail(userEmail);
		dto.setUserTel(userTel);
		
		// 2. 서비스 호출
		MemberService ms = new MemberService();
		int result = ms.memberJoinProcess(dto);
		System.out.println("----서비스 호출-----");
		System.out.println("db 등록 결과값 : " + result);
		
	}
}
반응형

'Backend > JAVA' 카테고리의 다른 글

JAVA 생성자 설계하기  (0) 2020.04.22
JAVA 메서드 오버로딩  (0) 2020.04.22
JAVA 형 변환  (0) 2020.04.21
JAVA 클래스  (0) 2020.04.21
JAVA 배열  (0) 2020.04.21

댓글