목록코딩 (9)
쯔이's Dev

* 자바는 4가지 종류의 접근제어자를 제공한다.* 접근제어자의 핵심은 "정보은닉"이다!!(속성과 기능을 외부로부터 숨기는 것!!) private모든 외부 호출을 막는다. 클래스 내부에서만 접근 가능.default(package-private)같은 패키지 안에서 호출은 허용한다.protected같은 패키지 안에서 호출은 허용한다. 패키지가 달라도 상속관계의 호출은 허용한다.public모든 외부 호출을 허용한다. * 허용범위 : private * 접근 제어자를 명시하지 않으면 같은 패키지 안에서 호출을 허용하는 default 접근 제어자가 적용된다.정확히는 동일한 패키지 내의 다른 클래스에서만 접근이 가능하다. * 필드(인스턴스 변수), 메서드, 생성자에 사용된다.* 클래스 레벨의 접근제어자도 일부 사용..
* 쉽게 패키지는 폴더, 클래스는 파일이라고 설명된다.* 수없이 많고 복잡한 코드에서 카테고리를 구분하여 유지보수성을 높인다.* 패키지를 구성할 때 서로 관련된 클래스는 하나의 패키지에 모으고, 관련이 적은 클래스는 다른 패키지로 분리하는 것이 좋다 package pack; import pack.a.User; public class PackageMain2 { public static void main(String[] args) { Data data = new Data(); User user = new User(); //import 사용으로 패키지 명 생략 가능 } }* import를 사용하면 다른 패키지에 있는 클래스를 가져와서 사용할 수 있다. pack.a.User pack.b.Use..
add(int a, int b) add(int a, int b, int c) add(double a, double b)메서드 오버로딩 : 위와 같이 이름이 같고 매개변수가 다른 메서드를 여러개 정의하는 것.* 이름이 같아도 매개변수의 타입 및 순서가 다르면 컴퓨터는 구분을 할 수 있기에 아무 문제가 없다. * 매개변수의 타입 및 순서 = 메서드 시그니처(method signature)주의!!* 반환형의 타입은 인정 X!! 반드시 매개변수의 타입이다!!!!
* return문을 만나면 그 즉시 해당 메서드를 빠져나간다.* if 문과 같이 사용될 때 return의 위치를 주의해야한다.//오류코드package method; public class MethodReturn1 { public static void main(String[] args) { boolean result = odd(2); System.out.println(result); } public static boolean odd(int i) { if (i % 2 == 1) { return true; } } }* 위의 코드에서 if문 조건식이 true이면 "return true;"가 반환되지만 flase이면 실행되지 않는다. 따라서 return문을 누락했다는 컴..
1. 로컬변수(=지역변수)- 메서드 내부에서 선언됨. 메서드 수행이 끝나면 소멸되는 변수- 초기값을 지정한 후 사용할 수 있음 (필수!!수동!!항상 직접!!)ex) int i = 5;- 조건문, 반복문 블록 내에서 선언한다면 수행이 끝나면 소멸되므로 계속 사용하기 위해서는 블록 밖에서 선언 필요.- 접근 지정자를 사용할 수 없음 : 해당 블록 내에서만 유효하기에 어차피 다른 메소드나 클래스에서 접근할 수 없으므로 접근지정자가 무의미하다.2. 멤버변수( = 필드)- 종류 : 클래스변수, 인스턴스 변수- 클래스에 선언됨. 굳이 0을 안써줘도 기본적으로 0으로 초기화됨.- static이 붙으면 클래스변수, 객체를 생성하면 인스턴스 변수이다.package class1;public class Student { ..

* 배열의 요소로 자료형이 같은 1차원 배열의 묶음을 갖고 잇음.* 2차원 배열은 할당된 공간마다 인덱스 번호 두 개 부여- 자료형[ ] [ ] 배열이름 = new int[행개수][열개수]; int[][] arr = new int[m][n]; int[] arr1;Arr1 = new int[4];int[][] arr2;arr2 = new int[3][4];자료형[ ][ ] 배열명 ; 자료형 배열명[ ][ ] ;자료형[ ] 배열명[ ]; 자료형[ ][ ] 배열명 = new 자료형[행크기][열크기]; 자료형 배열명[ ][ ] = new 자료형[행크기][열크기] ;자료형[ ] 배열명[ ] = new 자료형[행크기][열크기] ;ex) int[][] arr = new int[3][4]; int..