본문 바로가기

JAVA28

JAVA_제어자 - 제어자 : 클래스, 변수, 메서드 선언부에 함께 사용되어 부가적 의미를 부여함 접근제어자 : public, protected, (default), private 그 외 : final, static, abstract ① static : 클래스의, 공통적인 멤버변수 : 모든 인스턴스에 공통으로 사용되는 클래스 변수 메서드 : 인스턴스 생성없이 호출 가능 ② final : 마지막의, 변경될 수 없는 클래스 : 조상클래스 사용 불가, 변경될 수 없는(마지막) 클래스 메서드 : 오버라이딩 불가능(재정의불가능) 멤버변수 : 변경할 수 없는 변수(=> 상수) - 접근제어자 : public, protected, default, private 중 1개만 사용가능 public과 default는 클래스에서만 사용가능 클.. 2021. 7. 31.
JAVA_Pakage와 import 환경변수 설정에서 클래스패스를 설정해서 디렉토리의 경로를 적지 않아도 컴파일 가능한 방법이 있지만 아직 이해가 가지 않았다. 그래서 우선 디렉토리 경로를 찾아 컴파일하는 방법만 기록하고자 한다. src(source) : 소스파일이 있는 곳 bin(binary:컴퓨터언어) : 컴파일된 클래스 파일이 있는 곳 - mac 명령어 명령어 mac window 현재 디렉토리 pwd cd 현재 디렉토리 파일 리스트 ls -al dir 디렉토리 이동 cd cd 화면 클리어 clear cls - import : 클래스 코드를 작성하기 전에 import문으로 사용하고자 하는 클래스의 패키지를 미리 명시해주면 소스코드에 사용되는 클래스이름에서 패키지명은 생략할 수 있다. (단축키 : shift + command + o) -.. 2021. 7. 31.
JAVA_생성자(Constructor) : 인스턴스가 생성될 때 호출되는 '인스턴스 초기화 메서드' - 조건 ① 생성자 이름은 클래스 이름과 같아야 한다. ② 생성자는 리턴 값이 없다. * 모든 클래스는 생성자를 가지고 있다.(기본생성자, 매개변수생성자) ① 기본생성자 : 매개변수가 없는 생성자 클래스에 생성자를 정의하지 않아도 컴파일러가 자동적으로 추가하여 컴파일하기 때문에 매개변수가 없는 생성자일 경우 생략가능 ② 매개변수가 있는 생성자 : 매개변수가 있는 생성자 생성저도 매개변수를 선언하여 호출시 값을 넘겨받아 인스턴스의 초기화 작업에 사용 **** 매개변수 있는 생성자를 사용하면 컴파일러가 생성자가 있음을 인식하여 기본생성자를 만들지 않음 -> 이때 초기화가 없는 인스턴스가 생성될때 오류가 나기 때.. 2021. 7. 31.
JAVA_상속 상속 : 기존의 클래스를 재사용하여 새로운 클래스를 작성하는 것, - 장점, 재사용성, 코드의 중복제거 조상클래스 : 부모클래스, 상위클래스 자손클래스 : 자식클래스, 하위클래스 ** student1은 classA의 구성원이고 classA는 school의 반 중 하나이기 때문에 상속은 아래의 그림과 같이 나타낼 수 있다. - 포함관계 : 한 클래스의 멤버변수로 다른 클래스 타입의 참조변수를 선언하는 것 * 상속과 포함관계 생각할 때 '은~이다.' or '은 ~ 가지고 있다'로 생각해보기 - 상속은 단 하나의 클래스만 받을 수 있다 . - 모든 클래스의 조상은 'Object 클래스'이다. https://docs.oracle.com/javase/7/docs/api/java/lang/Object.html 에서.. 2021. 7. 31.
JAVA_오버로딩(Overloading)과 오버라이딩(Overriding) : 한 클래스 내에 이름이 같은 메소드를 여러 개 정의 - 조건, ① 같은 이름의 메서드인 경우 ② 매개변수(parameter)가 다른 타입이거나 타입의 수가 다른 경우 ③ 리턴값은 영향을 주지 않음 - 장점, 이름이 같으니, 같은 기능임을 파악할 수 있으며, 메서드 이름을 절약할 수 있음 class OverloadingTest { public static void main(String[] args){ Calculator cal = new Calculator(); //모두 cal.add로 메서드이름이 같지만 매개변수 타입이 다르기 때문에 출력이 가능하며, //메서드 이름으로 모두 더하는 메소드이구나 임을 파악할 수 있음 System.out.println("cal.add(2,3) => " + cal.add.. 2021. 7. 29.
JAVA_객체지향(매개변수, 메서드 구분 ) - 기본형 매개변수와 참조형 매개변수 1) 기본형 매개변수(primitive) : 값을 읽기만 함, 특정 값을 저장 ( int, long, double, char, float, short, byte, boolean) 2) 참조형 매개변수(reference) : 변수의 값을 읽고 변경 , 특정 객체를 간접적으로 가리키는 변수(주소저장) (String, int[], ..) public class ReferenceTest{ public static void main(String[] args){ //기본형 int money = 10000; System.out.print(money + " -> " ); // 10000 -> zero(money); System.out.println(money); // 10000 -.. 2021. 7. 28.