변수의 선언 메모리 공간에 데이터를 저장할 수 있는 공간을 할당하는 것 변수의 명명 규칙 대소문자가 구분되며 길이 제한이 없음. 예약어를 사용하면 안됨. ex) true, final, String 등 숫자로 시작하면 안 된다. ex) age1은 가능하지만 1age

값(Data)의 자료형을 바꾸는 것 (boolean 제외)같은 종류 자료형만 대입 가능같은 종류 자료형만 계산 가능계산의 결과도 같은 종류의 값이 나와야 함\-> 이러한 경우가 아닌 경우 형변환이 필요함값의 범위가 큰 자료형과 값의 범위가 작은 자료형의 연산 시, 컴파

사용자로부터 입력되는 정수, 실수, 문자열을 처리하는 클래스정수 : sc.nextInt();실수 : sc.nextFloat(); 또는 sc.nextDouble();문자열 : sc.next(); 또는 sc.nextLine();:: 출력값
반복문 조건식이 true인 동안 반복하겠다~라는 의미 for문과 while문은 for문 사용 -> 1부터 5까지 1씩 증가, 총 5번 반복 (종료 시점이 명확함) while문 나눈 결과 값이 10이 나올 때 까지 계속 반복!! 나오면 멈춤 (정확히 종료되는 시점이

배열이란? 같은 자료형의 변수를 하나의 묶음으로 다루는 것 배열은 저장된 값마다 인덱스 번호가 0부터 시작하여 설정되어 있음. 배열 선언과 할당 배열 선언 자료형[ ] 배열 명; 자료형 배열명[];

서로 연관되어 있는 변수와 메소드를 그루핑(Grouping)해주는 역할을 한다.클래스를 만든다는 것은 사용자 정의 데이터 타입을 만드는 것이다.그루핑의 가장 큰 역할은 다른 그룹과 구분해 준다는 것이다(다른 클래스랑 구별)클래스는 연관되어 있는 변수와 메소드의 집합이다
자바에서 생성자(constructor)는 객체를 초기화하는 특별한 종류의 메서드입니다. 생성자는 객체가 생성될 때 자동으로 호출되며, 객체의 초기화를 담당합니다.생성자는 클래스 이름과 동일합니다.반환 타입이 없으며, void도 사용하지 않습니다.생성자는 객체가 생성될
자바에서 메소드(method)는 객체 지향 프로그래밍(OOP)의 핵심 개념 중 하나로, 객체가 수행할 수 있는 동작을 정의한 함수입니다.메소드는 클래스 내에 선언되며, 클래스의 멤버로서 객체가 호출하여 사용할 수 있습니다.자바에서 메소드는 다음과 같은 구조를 따릅니다.

객체가 만들어지면 메모리가 만들어진다. new연산자가 Tv라는 객체를 생성하고 그 객체 주소를 알려주고 그 주소가 대입연산자에 의해 t에 저장된다.Tv객체를 다룰 때에는 반드시 Tv리모콘(참조변수 t)를 통해서만 제어할 수 있다.Tv 클래스의 맴버는 총 6개이다.(Tv

자식 클래스가 상속 받은 부모 메소드를 재작성 하는 것부모가 제공하는 기능을 후손이 일부 고쳐 사용하겠다는 의미로자식 객체를 통한 실행 시 후손 것이 우선권을 가짐메소드 헤드라인 위에 반드시 Annotation, @Override 표시접근 제어자를 부모 것보다 같거나
매개변수가 없는 생성자입니다.클래스 내부에 생성자를 정의하지 않아도 자동으로 생성됩니다.객체를 생성할 때, 인자를 전달하지 않고 생성자를 호출하면 기본생성자가 호출됩니다.기본적으로 아무런 작업도 수행하지 않는 생성자입니다.매개변수가 있는 생성자입니다.객체를 생성할 때,
인스턴스가 생성될 때마다 호출되는 인스턴스 초기화 메서드(=> 초기화란? 객체를 만들고, 원하는 값으로 세팅 한 것!)생성자의 이름은 클래스의 이름과 같아야 한다.생성자는 리턴 값이 없다.(void 안붙임)모든 클래스는 반드시 생성자를 가져야 한다.매개변수가 없는 생성
클래스 메서드 호출하는 방법 클래스이름.메서드
한 클래스 내에 같은 이름의 메서드를 여러 개 정의하는 것을 '오버로딩'이라고 한다.메서드 이름이 같아야 한다.매개변수의 개수 또는 타입이 달라야 한다.반환 타입은 관계없다.
부모가 없는 클래스는 자동적으로 Object클래스를 상속받게 된다.(컴파일러가 자동으로 추가해준다) \--> Object클래스에 정의된 11개의 메서드를 상속받는다. ( toString(), equals(Object obj), hashCode(),......)
자바에서 for-each 루프는 컬렉션(Collection) 객체나 배열(Array) 객체를 반복 처리할 때 사용하는 반복문입니다. for-each 루프는 다음과 같은 형태를 갖습니다. 위 문법에서 "요소의 타입"은 컬렉션 객체나 배열 객체에 저장된 요소의 데이터 타
오버라이딩이란? 조상 클래스로부터 상속받은 메서드의 내용을 변경하는 것상속받은 메서드를 그대로 사용하기도 하지만, 자손 클래스 자신에 맞게 변경해야하는 경우가 많다. 이럴 때 조상의 메서드를 오버라이딩 한다.선언부가 조상 클래스의 메서드와 일치해야 한다.접근 제어자를
기존에 없는 새로운 매서드를 정의하는 것(new)상속받은 메서드의 내용을 변경하는 것(change, modify)
객체 자신을 가리키는 참조변수. 인스턴스 메서드(생성자)내에만 존재조상의 멤버를 자신의 멤버와 구별할 때 사용한다.
조상 클래스의 생성자를 호출할 때 사용한다.조상의 멤버는 조상의 생성자를 호출해서 초기화\- " 생성자의 첫 줄에 반드시 생성자를 호출해야 한다 " 그렇지 않으면 컴파일러가 생성자의 첫 줄에 super()를 삽입한다.
접근 제어자 : public, protected, (default), private그 외 : static, final abstract, native, transient, synchronize....
같은 클래스에 있는 매서드일 경우에는 호출할 때 참조변수를 생략할 수 있다.static는 객체 생성 없이 호출이 가능하다.(참조변수 없이 호출이 가능하다)
위의 코드는 상속을 통한 클래스 생성과 이에 따라 만들어진 객체에 접근하는 방법을 설명한 코드이다.1\. Point 클래스는 int x, int y의 맴버변수를 갖는다.2\. Circle 클래스는 Point클래스를 상속하는 클래스이며 int r을 맴버변수로 갖는 클래스
외부로부터 데이터를 보호하기 위해서(맴버변수에 직접 접근을 막기 위해== 데이터를 보호하기 위에)위의 코드는 Time이라는 클래스에서 맴버변수 hour, minute, second는 private 접근 제어자를 통해 직접 접근은 차단하고 setHour 매서드를 통해 반
여러 가지 형태를 가질 수 있는 능력 조상 타입 참조 변수로 자손 타입 객체를 다루는 것
사용할 수 있는 멤버의 갯수를 조절하는 것조상 자손 관계의 참조변수는 서로 형변환 가능
조상타입의 배열에 자손들의 객체를 담을 수 있다.
미완성 설계도. 미완성(추상) 메서드를 갖고 있는 클래스다른 클래스 작성에 ㄷ움을 주기 위한 것. 인스턴스 생성 불가.(객체 생성 불가)\-상속을 통해 추상 메서드를 완성해야 인스턴스 생성 가능예시 코드
여러 클래스에 공통적으로 사용될 수 있는 추상클래스를 바로 작성하거나 기존 클래스의 공통 부분을 뽑아서 추상클래스를 만든다.
메서드를 이용한 iv 접근 (캡슐화 관련)추상클래스 vs 인터페이스(차이점)추상클래스는 생성자 및 iv가 있지만 인터페이스는 구현것이 아무것도 없이 추상메서드만 나열인터페이스 조상은 인터페이스만 가능(Object가 최고조상 아님!!)다중상속 가능(why? 충돌할 꺼리가
인터페이스 타입 매개변수는 인터페이스 구현한 클래스의 객체만 가능인터페이스를 메서드의 리턴타입으로 지정할 수 있다
인스턴스 변수(instance variable)는 클래스 내부에서 선언되며, 해당 클래스의 인스턴스(객체)가 생성될 때마다 생성되는 변수입니다. 클래스의 모든 메서드에서 접근 가능하며, 인스턴스마다 값이 다를 수 있습니다.매개변수(parameter)는 메서드가 호출될
개발 시간을 단축시킬 수 있다.== 일단 인터페이스가 작성되면, 이를 사용해서 프로그램을 작성하는 것이 가능하기 때문에 메서드를 호출하는 쪽에서는 메서드의 내용에 관계없이 선언부만 알면 되기 때문이다.표준화가 가능하다.== 프로젝트에 사용되는 기본 틀을 인터페이스로 작