복습 8 - java 기초

2025. 1. 19. 20:43·Java

 

package re_html; //그룹

public class re_java1 { // 클래스

	// 메인 메소드
	public static void main(String[] args) {
		String data1 = "hong";
		String data2 = "25";
		re_box1 rb = new re_box1(data1, data2);
		rb.check();
	}
}

//Java 메소드는 같은 이름 또는 같은 자료형이라도 매개변수의 종류에 따라 다르게 인식
class re_box1 {
	// public(다가능), private(해당 클래스만), protected(같은 패키지만)
	// 필드에 선언된 것들은 전부 this를 사용!
	String a, b, c; // 변수들은 기본 public으로 설정되어있음

	protected re_box1(String data1, String data2) { // 즉시실행 private하면 실행안됨!! public과 protected만 사용
		this.a = data1; // setter
		this.b = data2; // setter
	}
	protected re_box1(String data1) {
		this.a = data1;
	}

	// 일반 void 메소드 (return 없음) => 자료형 및 리턴이 없는 메소드
	public void check() {
		System.out.println(this.a);
		String msg = this.level();	//return 함수를 호출 후 결과값을 받는 코드
		System.out.println(msg);	//결과값을 출력하는 코드
	}

	public String level() {
		String levels = "";	//return에서 결과값을 사용할 변수 		
		if (this.a == "hong") {
			levels = "실버회원";
		}else {
			levels = "비회원";
		}
		return levels;
	}	
}
  • 메소드끼리 같은 이름 가능 대신 매개변수 다르게!
  • 즉시 실행 메소드 : 클래스와 메소드 같은 이름 사용
  • 접근제한자 : public(모두 가능) protected(같은 패키지) private(같은 클래스)
  • setter 잘 사용하기
  • return 함수 : 메소드의 자료형과 리턴값의 자료형 일치
  • 전역변수 : this 사용
package re_html;

import java.util.Scanner;

public class re_java2 {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		System.out.println("패스워드를 입력하세요 : ");

		String passwd = sc.next();
		System.out.println("동일한 패스워드를 입력하세요 : ");
		String passwd2 = sc.next();

		re_java2_box rb = new re_java2_box();
		String result = rb.check(passwd, passwd2);
		
		if(result =="no") {
			System.out.println("동일한 패스워드가 아닙니다.");
		}else {
			System.out.println("패스워드가 동일합니다.");
		}
		sc.close();
	}
}

class re_java2_box {
	public String check(String passwd, String passwd2) { // return 메소드 (자료형에 맞게 값을 이관)
		String ck = "";
		if(passwd.equals(passwd2)) {	//equals안쓸거면 스캔받을때 intern쓰기
			ck = "yes";
		}else {
			ck = "no";
		}
		return ck;
	}
}
  • Scanner : 사용자가 입력하는 가상의 입력창
  • nextLine(), next() : 문자
  • nextInt() : 숫자, nextFloat() : 소수점 등등 다있음
  • 주의점 : nextLine을 사용시 자료형 변경될경우 다시 사용 불가능 버그남!
  • ==,!= : 문자일때 사용하면 오류남 -> equals 사용
  • equals안쓸거면 스캔받을때 intern쓰기
  • 숫자는 연산기호 가능
package re_html;

import java.util.Scanner;

//반복문 결과를 받는 코드 
public class re_java3 {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		System.out.println("숫자를 입력하세요(1~10까지) : ");
		int no = sc.nextInt();
		if (1 < no || no > 10) {
			System.out.println("숫자는 1~10까지만 입력하세요");
			main(args); // 재귀함수로 해당 메소드를 재호출
		} else {
			re_java3_box rj = new re_java3_box();
			int result = rj.plus(no);
			System.out.println("최종 결과 합계 : " + result);
		}
		sc.close();
	}
}

class re_java3_box {
	int f;
	public int plus(int no) { // return을 사용하는 경우 매개변수로 값을 받은 후 결과를 회신
		// 사용자가 입력한 값을 1부터 모두 더하는 반복문
		int sum = 0;
		this.f = 1;
		while(this.f <= no) {
			sum = this.f;
			this.f++;
		}
		return sum;
	}
}
  • 재귀함수 : 본인을 호출 //매개변수 주의메소드에서 값을 이관하는 방식
  • 1. 필드에 변수를 선언하여 값을 이관하는 방식
  • 2. 매개변수로 메소드로 전달하여 이관하는 방식
저작자표시 비영리 변경금지 (새창열림)
'Java' 카테고리의 다른 글
  • Java - 클래스 배열
  • Java - 배열
  • Java 기초 4
  • Java 기초 3
9na0
9na0
응애
  • 9na0
    구나딩
    9na0
  • 전체
    오늘
    어제
    • 분류 전체보기 (211)
      • Web (118)
      • Java (28)
      • 데이터베이스 (14)
      • 세팅 (12)
      • 과제 (3)
      • 쪽지시험 (2)
      • 정보처리기사 (4)
      • 서버 (25)
  • 블로그 메뉴

    • 링크

      • 포폴
      • 구깃
    • 공지사항

    • 인기 글

    • 태그

      re_java10
      net1
      file25_t
      notice_writer
      net3
      exam1_1~10
      noticewriteok
      java_io1~10
      file25
      re2
      datalist
      net5~10
      ab1
      macbook pro m4
      file24
      io_dto
      net4
      net2
      Oracle
      spring-boot
    • 최근 댓글

    • 최근 글

    • hELLO· Designed By정상우.v4.10.3
    9na0
    복습 8 - java 기초
    상단으로

    티스토리툴바