일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 |
- list 컬렉션
- Stack
- coding test
- Algorithm
- 알기쉬운 알고리즘
- Selection Sorting
- buffer
- Graph
- 윤성우의 열혈 자료구조
- 이스케이프 문자
- 메모리구조
- insertion sort
- s
- R
- Serialization
- C programming
- stream
- 혼자 공부하는 C언어
- datastructure
- 이것이 자바다
- 윤성우 열혈자료구조
- C 언어 코딩 도장
- JSON
- Today
- Total
목록Programming Language/Java (36)
Engineering Note

다형성 개념 다형성 사용 예시 다형성 사용 이유 Polymorphism 다형성 상속과 연관된 개념이므로 다형성을 이해하기 위해서는 상속에 대해 충분히 알고 있어야 한다. 다형성이란 여러가지 형태를 가질 수 있는 능력. 다시 말하면, 한 타입의 참조변수로 여러 타입의 인스턴스를 참조할 수 있는 것이다. 단, 다형성이 가능한 관계는 클래스 간의 상속관계가 있어야 하고, 부모 타입의 참조변수로 자식타입의 인스턴스를 참조할 수 있지만, 자식타입의 참조변수로 부모타입의 인스턴스를 참조하는 것은 불가능하다. 부모타입의 인스턴스에는 자식타입 참조변수가 접근하고 싶은 멤버가 없을 수 있기 때문이다. 자식타입 클래스는 언제나 부모타입 클래스보다 멤버의 수가 같거나 많다. 다형성 예시 package polymorphism..

변수의 정의 변수의 종류 기본형 변수, 참조형 변수 클래스 변수, 인스턴스 변수, 지역 변수 변수 값을 저장할 수 있는 메모리 공간 변수의 선언과 초기화 int age; int num = 1; //선언과 동시에 초기화 변수를 선언하면, 메모리의 빈 공간에 ‘변수타입’에 알맞은 크기의 저장공간이 확보되고, 앞으로 이 저장공간은 ‘변수이름’을 통해 사용할 수 있게 된다. 예를 들어, int, 정수 타입의 변수를 선언 했다면 int 타입 사이즈에 해당하는 4byte(32bit)의 메모리 공간이 확보된다. 우리가 인터넷에서 특정 페이지를 찾아갈 때 ip주소 대신 도메인명으로 naver를 찾아 가는 것처럼 변수명으로 메모리를 찾아 간다고 이해하면 된다. 변수타입 변수에 저장될 값이 어떤 ‘type’인지를 지정하는..

Inheritance Inheritance 상속 : 기존의 클래스를 재사용하여 새로운 클래스를 작성하는 것이다. 상속을 사용하는 이유 상속을 통해서 클래스를 작성하면 보다 적은 양의 코드로 새로운 클래스를 작성할 수 있고 코드를 공통적으로 관리할 수 있기 때문에 코드의 추가 및 변경이 매우 용이하다. 코드의 재사용성을 높이고 코드의 중복을 제거하여 프로그램의 생산성과 유지보수에 크게 기여한다. Java에서 상속을 구현하는 방법 새로 작성하고자 하는 클래스의 이름 뒤에 상속 받고자 하는 클래스의 이름을 키워드 ‘extends’와 함께 서 주기만 하면 된다. 예시 새로 작성하려는 클래스의 이름이 Child이고 상속 받고자 하는 기존 클래스의 이름이 Parent라면 아래와 같이 작성하면 된다.조상 클래스와 자..
Access Modifier, Encapsulation Package Access modifier(private, default, protected, public) Access modifier 사용 이유, 캡슐화 Getter, Setter 사용 이유 Package 패키지, 클래스의 묶음 클래스 또는 인터페이스를 포함시킬 수 있으며, 서로 관련된 클래스들끼리 그룹 단위로 묶음으로써 클래스를 효율적으로 관리할 수 있다. 모든 클래스는 반드시 하나의 패키지에 포함 되어야 하고, 클래스명과 쉽게 구분하기 위해 소문자로 명명하는 것을 원칙으로 하고 있다. Access modifier(접근 제한자) 제한자(제어 자) - 클래스, 변수, 또는 메서드의 선언부와 함께 사용되어 부가적인 의미를 부여함. 접근 제한자 - ..

Object Oriented Programming Object Oriented Programming Object Class Instance IoC Object Oriented Programming In the real world, you often have many objects of the same kind. For example, your bicycle is just one of many bicycles in the world. Using object-oriented terminology, we say that your bicycle object is an instance of the class of objects known as bicycles. 현실세계(원자세계)를 bit 세계로 옮길 때, 즉 S..

Dependency, 의존 : 다른 것에 의지하여 존재함 프로그래밍 세계, 그중에서 객체지향 프로그래밍에서도 의존한다는 것은 하나의 객체가 다른 객체에 의존하여 존재한 다는 것을 의미한다. pseudo code new Car(); // 자동차를 생산한다. Car(){ new Tire(); // 자동차는 내부적으로 타이어를 생산한다. } 이 경우를 살펴보면 ‘Car가 Tire에 의존한다’고 표현할 수 있다. code // Tire.java package exam001; public interface Tire { String getBrand(); } // KoreTire.java package exam001; public class KoreaTire implements Tire{ @Override publi..

1. 먼저 나는 Java8과 Java11 버전을 두개 설치했다. 2. 그리고 윈도우 bat파일을 이용해 스크립트문을 작성하여 cmd 창에서 bat파일을 통해 환경변수를 변경하도록 하여 Java 버전 여러개의 실행환경을 쉽게 변경하도록 했다. 환경변수 설정하는 방법 윈도우 제어판에서 시스템 및 보안에 들어간다. 시스템에 들어간다. 4. 시스템에서는 고급 시스템 설정에 들어간다. 환경변수에서 새로만들기 버튼을 누른다. 그리고 변수이름을 JAVA-HOME으로 해주고 변수값에 jdk가 설치된 경로를 넣어준다. C:\Program Files\Java 위치에 scripts 폴더를 만들어 준다. scripts 폴더에 bat파일을 만들 것이다. 그리고 어디에서나 이 bat파일을 실행할 수 있도록 환경변수를 설정해준다...

this 키워드 Java에서 this는 현재 객체, 자기 자신을 나타낸다. Car class public class Car { String name; int number; public Car(String name){ name = name; } } 만약 위와 같이 Car Class를 생성하고 Main Class에서 Car 인스턴스를 만들어 Car의 name을 출력하게 되면 null 값이 출력된다. Car class의 생성자 메소드에서 name을 받아서 name에 값을 대입하는 코드는 사실 Car 필드, 인스턴스 변수 name에 값을 넣는 것이 아니라 매개 변수name 에 매개변수 name으 로 받은 값을 넣는 다는 의미다. 자바는 가장 가까운 블록의 변수를 가져와 사용하기 때문이다. Main public ..