JDK Java Development Kit : 자바 실행 시 필요한 라이브러리 파일 존재 JRE Java Runtime Evniorment : JVM을 생성하는 부분 JVM Java Virtual Machine : 자바 프로그램을 실행시켜주기 위한 목적, 실행할 수 있는 주체 JAVA언어로 만든 프로그램을 실행시킬 때 반드시 필요한 것 자바의 컴파일러이다 기본생성자를 만들어준다 JAVA를 사용하기 위해서 JDK(JRE, JVM 포함) 설치 하여야 함 개발 툴 : eclipse JVM의 구성 ClassLoader : 모든 클래스(코드)는 참조 순간에 동적으로 JVM에 연결되며 메모리에 로딩 Execution Engine : JVM은 Method Area의 Byte Code를 Execution Engine..
업캐스팅 / 다운캐스팅 : 부모-자식관계 클래스일 때만 가능!! 업캐스팅 : 자식타입 > 부모타입 자식타입을 부모타입으로 업캐스팅이 된다면 1.자식에서 새롭게 정의된 멤버를 사용이 불가능하다 2.자식에서 재정의된 메소드는 자식에서 재정의된 대로 동작한다 부모타입 변수 = (부모타입)자식객체; 다운캐스팅 : 부모타입 > 자식타입(X) 부모타입은 자식타입으로 캐스팅할 수 없다 다운캐스팅은 업캐스팅된 객체(원래 자식타입인 객체)를 다시 자식타입으로 되돌리는 행위 업캐스팅으로 인해 못 썼던 멤버들을 다시 활용할 수 있다 자식타입 변수 = (자식타입)업캐스팅된 변수;
오버라이딩(overriding)(재정의) 상속과정에서 재정의하는 것! 상속이 반드시 있어야 함. 상속관계에서만 발생 상속 과정에서 부모의 메소드를 자식에서 재정의하는 것 부모타입의 객체에서 메소드가 사용되면 부모에서 정의된 대로 실행 자식타입의 객체에서 메소드가 사용되면 자식에서 재정의된 대로 실행 메소드 이름 + ctrl + enter >> 자동완성 @override // 어노테이션 주석 : 컴퓨터에 설명하기 위한 주석 실수를 최소화 할 수 있음. 오버로딩(overloading)(중복정의) 메소드 이름은 같은데 매개변수의 갯수나 타입이 다른 경우 타입을 다르게 정의하는 것 함수 만드는 과정에서 나오는 것 이는 다형성(polymorphism)을 구성하는 요소이다. 다형성 : 하나의 모양으로 다르게 동작하..
객체를 만들어서 메모리에 등록시켜주는 것 >> ★객체화★ 클래스 내에 있는 정보를 메인 메소드에서 바로 가져다 쓸 수가 없으니 객체화를 통해 객체와 메인 메소드를 연결해서 지정한 변수명으로 클래스 내의 정보를 가져다 쓰고 객체화를 통해 메인 메소드 한 곳에서 여러 클래스의 정보를 사용할 수 있다 객체화 클래스명 변수명 = new 클래스명() 타입 객체(인스턴스) 메모리에 할당시켜주는 연산자 생성자 생성자 : 객체를 생성할 때 사용한다 메소드랑 똑같지만 이미 메모리에 객체를 등록시켜주는 기능이 정해져있기 때문에 return을 사용할 수 없고, '생성자'라고 부른다. 생성자가 없다면?? 클래스명 변수명; >> 값을 넣지 않고 변수 선언만 한 것임. 객체가 안 만들어진 상태.
세터 : private 변수에 값을 저장해주는 메소드 set변수명() 게터 : private 변수에 저장되어 있는 값을 return 해주는 메소드 get변수명() 단축키 : alt+shift+s > r > alt+a > alt+r private으로 설정된 변수들은 다른 클래스에서 접근을 할 수 없다 ((private으로 변수 설정하는 이유 : 변수의 값을 직접 대입하는 것은 위험하다 엉뚱한 값을 들어가 있어도 컴퓨터가 오류라고 인식 못함) 변수에 값을 직접 저장하지 못하게 함으로써 유효한 값이 들어왔는지 검사를 할 수 있으며 안정성을 높일 수 있다 =>> public으로 설정된 메소드를 통해 우회적으로 접근해야 한다 변수의 값을 설정하는 메소드 : setter 변수에 저장되어 있는 값을 가져오는 메소드 ..
> 최우선 연산자 () 단항 연산자 ! 산술 연산자 +- */% 쉬프트 연산자 관계 연산자 > =