제어자(modifier) 제어자는 클래스, 변수, 메서드 선언부에서 사용되며 부가적인 의미를 부여한다. 제어자의 종류 접근 제어자: public, protected, default, private(접근제어자는 한 번에 한 개만 가능) 그 외: static, final, abstract, native, syncronized 등 static static이 붙으면 클래스의, 공통적인 이라는 의미이다. 인스턴스 생성없이 호출할 수 있으며, static(클래식) 메서드 내에서는 인스턴스 멤버들을 직접 사용할 수 없다. final final이 붙으면 변경될 수 없다는 의미이다. 클래스에 붙으면 다른 클래스의 조상이 될 수 없다. 메서드에 붙으면 오버라이딩될 수 없다. 변수 앞에 붙으면 값을 변경할 수 없다. 일반적..
Today I Learned JAVA 오버라이딩 super, super() interface JS project 드디어 deploy를 했다..!!!!!! smart-brains-api.herokuapp.com enter key signin 추가 Today was 디플로이 하는 거 정말 쉽지 않았다. 데이터베이스를 헤로쿠에 새로 만들어서 연결하는 작업이 제일 애먹었는데, 일단 데이터베이스 url을 연결하는 것도 애먹었지만 문제는 연결 뒤에도 register가 안된다는 것이었다. log찍어도 딱히 에러나는 것은 없는데 register가 안된다고 한다. 어디가 잘못됐는지 진짜 못찾겠다 싶었는데, 나중에 찾긴 찼았다. psql에서 query history로 테이블 생성 명령을 복사해서 터미널에 붙여넣어 테이블을..
오버라이딩(overriding) def: 조상 클래스로부터 상속받은 메서드의 내용을 변경하는 것을 오버라이딩이라고 한다. 오버로딩과 오버라이딩은 명칭이 비슷하지만, 오버로딩은 기존에 없는 새로운 메서드를 만드는 것(new)이고 오버라이딩은 기존의 조상클래스의 메서드를 수정(modify)하는 것이다. Super def: 자손클래스에서 조상클래스로부터 상속받은 멤버를 참조하는 데 사용되는 참조변수. this처럼, 상속받은 멤버와 자신의 클래스에 정의된 멤버 이름이 같을 때에는 super로 구별할 수 있다. 예시1 : 조상클래스 변수를 super로 호출 class SuperTest { public static void main(String[] args) { Child c = new Child(); c.meth..
Today I Learned JS Project Code Review Security Review JAVA 변수의 종류 참조형 매개변수 및 참조형 반환 인스턴스와 클래스 간 참조, 호출 관계 클래스 간 관계(상속, 포함) Today was 갑자기 몰아서 하려니까 힘들었다...ㅎ deploy해야되는데 코드리뷰 하느라 끝났다.. 그런데 개선하고 싶은 부분이 아직 몇가지 있는데 시간이 별로 없어서 목요일까지 할 수 있을지 모르겠다. 자바는 오버라이딩이랑 추상화까지 진도인데 아직 못봤다. 내일은 진짜 무조건 deploy까지 할거다!!!
클래스 간의 관계 상속(Inheritance) class Parent { } class Child extends Parent { } 포함(Composite) class Circle { int x; // 원점 x좌표 int y; // 원점 y좌표 int r; } class Point { int x; int y; } // Point 클래스를 재사용하여 클래스 내에 포함시키는 경우 class Circle { Point c = new Point(); // 원점 int r; } 클래스 간 관계 중 어느 것이 적절할 지 판단하는 기준 상속관계 => ~은 ~이다. (eg. 스포츠카는 자동차이다.) 포함관계 => ~은 ~을 가지고 있다. (eg. 원은 원점을 가지고 있다.) 상속 및 포함 예시 class DrawSha..
메서드의 호출 다른 타입으로 호출했을 경우 class MyMathTest { public static void main(String args[]) { MyMath mm = new MyMath(); double result = mm.divide(5L, 3L); System.our.println(result); // prints 1.6666666666666667 } } class MyMath { double divide(double a, double b) P return a / b; } divide 메서드 선언 시에 패러미터는 double형으로 선언했는데, 실제 아규먼트는 long형으로 대입한 경우, double a = 5L;과 같아서, long형 값을 double형 변수에 저장하는 것과 같다. 이 경우 d..
기본형, 참조형 parameter 참조형 예시1 class Data { int x; } class ReferenceParamEx { public static void main(String[] args) { Data d = new Data(); d.x = 10; System.out.println(d.x); // prints 10 change(d); // pass d System.out.println(d.x); // After change, prints 1000 } static void change(Data d) { d.x = 1000; } } change메서드의 매개변수가 참조형이라서 값이 아니라 값이 d가 저장된 주소를 change메서드에게 넘겨주기 때문에, 메서드를 호출한 뒤 d.x값이 변경된다. 참조..
선언위치에 따른 변수의 종류 변수 종류는 세 가지이다. 클래스변수(class variable) 인스턴스변수(instance variable) 지역변수(local variable) 변수의 종류 선언위치 생성시기 클래스 변수 클래스 영역 클래스가 메모리에 올라갈 때 인스턴스 변수 클래스 영역 인스턴스가 생성될 때 지역 변수 메서드 영역 변수 선언문이 수행될 때 클래스 변수는 모든 인스턴스가 공통된 저장공간을 공유한다. 한 클래스의 모든 인스턴스들이 같은 값을 가진다. (자바스크립트의 프로토타입 같다.) 앞에 static이 붙는다. 클래스 변수는 객체생성 없이 클래스이름.클래스변수로 직접 사용가능하다. 인스턴스 변수는 독립적인 저장공간을 가지므로 서로 다른 값을 가진다. 인스턴스마다 고유한 상태를 가질 수 있..
- Total
- Today
- Yesterday
- Java
- 제네릭스
- GIT
- youtube data api
- rxjs
- Conflict
- 깃
- react
- Session
- SQL
- Data Structure
- JavaScript
- CSS
- 인스턴스
- jQuery
- til
- getter
- c언어
- Prefix Sums
- Redux
- oracle
- package.json
- this
- 알고리즘
- 자바
- 개발 공부
- 리덕스
- linkedlist
- useEffect
- 포인터 변수
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
