AWS BACK DAY 5. "Java에서 알아보는 생성자, this, 접근지정자, Getter & Setter, 배열"

이강용·2023년 1월 5일

Java 기초

목록 보기
5/26
post-thumbnail

생성자 constructor

클래스를 처음 만들 때 멤버 변수나 상수를 초기화 하는것

생성자가 없는 클래스는 클래스 파일을 컴파일할 때 자바 컴파일러에서 자동으로 생성자를 만들어 준다. 이를 디폴트 생성자 ( default constructor)라고 한다.

기본 생성자는 생략돼있지만, 오버로딩으로 생성자를 추가할 경우, 기본 생성자는 해제가 된다.

this

  • 객체, 자기자신(메모리) 을 나타낸다

    사용법 : 클래스 속성과 생성자/메서드의 매개변수(input parameter)의 이름이 같은 경우

  • 클래스의 속성을 사용할 때 this 키워드를 사용

this. : 자기 자신의 주소 . : 참조

접근지정자

접근 지정자접근범위동일클래스동일패키지다른패키지의 자식클래스다른 패키지
public접근 제한 없음OOOO
protected동일 패키지와 상속 받은 클래스 내부OOOO
default동일 패키지 내에서만OOOO
private동일 클래스 내에서만OOOO

접근지정자를 쓰는 이유?

클래스의 멤버 변수 public으로 선언하면 접근이 제한되지 않으므로 정보의 오류가 발생할 수 있음, 이런 경우 오류가 나더라도 그 값이 해당 변수에 대입되지 못하도록 변수를
private로 선언하여 외부에서 접근하지 못하도록 함 정보은닉 ( information hiding) 이라고 함

Getter & Setter

값을 얻는 get()메서드를 getter, 값을 지정하는 set()메서드를 setter라 함

Alt + Shift + S : Getter 와 Setter를 자동으로 생성해주는 단축키

Github

링크텍스트

  • 버전 관리

소스트리

소스트리 설치

Remote : github
Local : git

working directory : 우리가 지금 사용하고 있는 컴퓨터 작업 디렉토리

staging area : local repo에 저장할 파일들을 설정할 수 있고, local repo로 가기전 설정한 파일들이 staging area에 임시 저장

local repository : 원격 저장소에 저장하기 전, 최종적으로 우리 컴퓨터에 저장되는 저장소

git add : 선택적으로 저장

git commit : 메시지

git chechout : 상태를 되돌림

HEAD 가 잡힌 상태에선 절대 Commit하면 안됨 !

배열

int[] nums = new int[5]; new 동적할당
nums[0] = 10;
nums[1] = 20;
nums[2] = 30;
nums[3] = 40;
nums[4] = 50;

nums[0]nums[1]nums[2]nums[3]nums[4]
  • 배열의 세 가지 표현 방법
String[] names = new String[3];
		
		names[0] = "A";
		names[1] = "B";
		names[2] = "C";
String[] names2 = new String[] {"D","E","F"};
String[] names3 = {"G","H","I"};

배열.length 키워드를 for에 넣어 사용하자

for(int i = 0; i<names.length; i++) {
				System.out.println("이름[" + (i + 1) + "]: " + names[i]);
			}

전체

package 배열;

public class Array2 {
	
	public static void printNames(String[] names) {
	
			for(int i = 0; i<names.length; i++) {
				System.out.println("이름[" + (i + 1) + "]: " + names[i]);
			}
			
			System.out.println();
	}
		
	public static void main(String[] args) {
			
		String[] names = new String[3];
		
		names[0] = "A";
		names[1] = "B";
		names[2] = "C";
		String[] names2 = new String[] {"D","E","F"};
		String[] names3 = {"G","H","I","J","K"};
		
		printNames(names);
		printNames(names2);
		printNames(new String[] {"D","E","F","L","K","Y"});
		printNames(names3);
		
		
		}	
	}
profile
HW + SW = 1

0개의 댓글