선택 안됨 [자바][Java Programming Language]객체지향 프로그래밍 -package와 import
·
자바(Java)
패키지(package)정의 : 클래스의 묶음 package java.lang.String이렇게 선언할 수 있는데. 이건 java패키지의 서브디렉토리인 lang에 속한 String.class 파일임을 알려준다.  import문정의 : 클래스 코드를 작성하기 전에 import문으로 사용할려고 하는 클래스 패키지를 미리 명시하고 소스코드에 사용되는 클래스이름에서 패키지명 생략이 가능하다. import문을 많이 사용해도 프로그램의 성능에 영향을 미치는건 아니다!! 컴파일 시간이 아주 조금 더 늘어남!!import java.util.Calendar;import java.util.Date;import java.util.ArrayList;//대신 이렇게 한줄로 선언도 가능하다.import java.util.* 조심해..
[자바][Java Programming Language]객체지향 프로그래밍 - 오버라이딩
·
자바(Java)
오버라이딩오버라이딩이란??조상 클래스로부터 상속받은 메서드의 내용을 변경하는 것을 오버라이딩이라고 한다.  조건이름이 같아야 한다.매개변수가 같아야 한다.반환타입이 같아야 한다.주의점!접근 제어자를 조상 클래스의 메서드보다 좁은 범위로 변경할 수 없다.조상에서 protected로 선언되어 있으면 자식에서는 protected, public만 가능 private로 하면 안된다.예외는 조상 클래스의 메서드보다 많이 선언할 수 없다.인스턴스메서드를 static메서드로 또는 그 반대로 변경할 수 없다.오버로딩 VS 오버라이딩오버로딩(overloading) : 기존에 없는 새로운 메서드를 정의하는 것오버라이딩(overriding) : 상속받은 메서드의 내용을 변경하는 것class Phone extends Objec..
[자바][Java Programming Language]객체지향 프로그래밍 - 상속
·
자바(Java)
상속상속이란!!!기본의 클래스를 재사용하여 새로운 클래스를 작성하는 것이다.장점 적은 양의 코드로 새로운 클래스 작성이 가능하다.코드를 공통적으로 관리해서 코드의 추가 및 변경이 매우 용이하다.사용 방법class [클래스 이름] extends [상속받고자 하는 클래스의 이름]{ ...}조상 클래스 : 부모 클래스, 상위 클래스, 기반 클래스자손 클래스 : 자식 클래스, 하위 클래스, 파생된 클래스 조상 클래스의 변화 -> 자손 클래스에게 영향을 준다.자손 클래스의 변화 -> 조상 클래스에게 영향을 안준다. 특징생성자와 초기화 블럭은 상속되지 않는다. 멤버만 상속된다.자손 클래스의 멤버 개수는 조상 클래스보다 항상 같거나 많다.private 또는 default인 멤버는 상속은 받지만 자손으로부..
[자바][Java Programming Language] 객체지향프로그래밍(클래스, 생성자, 매개변수, 메서드)
·
자바(Java)
객체지향언어특징코드의 재사용성이 높다.코드의 관리가 용이하다.신뢰성이 높은 프로그래밍을 가능하게 한다.클래스와 객체클래스 : 객체를 정의해 놓은것으로 객체를 생성하는데 사용한다.객체 : 실제로 존재하는 것으로 사물 또는 개념을 말한다 EX) 책상, 의자, 수학공식, 프로그램 에러 클래스가 제품의 설계도라면 객체는 설계도로 만들어진 제품이라고 생각하면 된다!!인스턴스화(instantiate) : 클래스로부터 객체를 만드는 과정인스턴스(instance) : 클래스로부터 만들어진 객체 TV에대한 설계도는 클래스 설계도를 통해서 만든 걸 객체(인스턴스) 만드는 과정을 인스턴스화 라고 생각하면 될거 같다. 그리고 각 객체는 속성, 기능을 가지고 있는데속성 : 멤버변수(member variable), 특성(attr..
[백준][JAVA] 2493 탑
·
알고리즘/문제풀이 :백준
바킹독 스택강의를 듣고 응용문제를 풀면서 생각했던 과정들이다!!📌문제 설명백준 2493 탑 일직선 위에 N개의 높이가 서로 다른 탑을 수평 직선의 왼쪽부터 오른쪽 방향으로 차례로 세우고, 각 탑의 꼭대기에 레이저 송신기를 설치하였다. 조건모든 탑의 레이저 송신기는 레이저 신호를 지표면과 평행하게 수평 직선의 왼쪽 방향으로 발사한다.모든 탑에는 레이저 신호를 수신하는 장치가 설치되어 있다.레이저 신호는 가장 먼저 만나는 단 하나의 탑에서만 수신이 가능하다.예시 6, 9, 5, 7, 4이렇게 생각하면 된다!!그래서 출력이 0 0 2 2 4가 나온다.1번과 2번 탑은 아무곳도 안닿아서 0이 출력되고 3번과 4번 탑은 2번탑에 막히기 때문에 2가 출력된다. 그리고 5번탑은 4번탑에 막혀서 4가 출력된다!!?..
[백준][Java] 10799 - 쇠막대기
·
알고리즘/문제풀이 :백준
바킹독강의 문제 중 스택의 활용(수식의 괄호 쌍) 응용 문제를 풀면서 어려웠던 부분과 생각하지 못했던 부분에 대해서 설명할려고 한다!!📌문제 설명백준 10799 쇠막대기여러 개의 쇠 막대기를 레이저로 절단하려고 한다. 쇠막대기와 레이저의 배치 조건쇠막대기는 자신보다 긴 쇠막대기 위에만 놓일 수 있다. - 쇠막대기를 다른 쇠막대기 위에 놓는 경우 완전히 포함되도록 놓되, 끝점은 겹치지 않도록 놓는다.각 쇠막대기를 자르는 레이저는 적어도 하나 존재한다.레이저는 어떤 쇠막대기의 양 끝점과도 겹치지 않는다.() : 레이저를 아래로 발사하는 구간이다.(....) : 막대의 역할을 하고 있고 사이에는 막대가 있을 수 있고, 레이저를 발사할 수 있다. 쇠막대기와 레이저의 배치를 나타내는 괄호 표현이 주어졌을 때, ..