전체 글 337

[단과_JAVA] 2020.02.20

1. 마크 인터페이스(=마커 인터페이스) : 공통된 클래스들을 하나로 묶어주는 기능(그룹화)    영역 안에는 비워놓는다. 2. 다중 상속  : jdk8버전부터는 다중 상속이 사실상 지원된다.    인터페이스에서 바디가 있는 메소드를 선언할 수 있기 때문이다. ** 인터페이스의 다중 지정을 통해 다중 상속이 된다고 보면 된다. 3. 다중 지정에서 발생하는 모호성 해결방법 1) 2개의 인터페이스에 같은 이름의 메소드가 있다면     지정받은 클래스에서 반드시 재정의하고 사용한다.2) 부모 클래스와 부모 인터페이스에 같은 이름의 메소드가     있다면 부모 클래스에 있는 메소드가 사용된다. 4. 오늘 실습코드1) 인터페이스 예제** Soldier 인터페이스 **package inter;public inter..

[단과_C] 2020.02.19

1. 조건문 1) if문 2) switch문     switch(변수명) {     case 값1:            실행할 문장;            break;     case 값2:            실행할 문장;            break;     case 값3:            실행할 문장;            break;     ...          default:           실행할 문장;     } ** if문은 다양한 변수를 다양한 관계연산자로 비교할 때 사용하고,     switch문은 하나의 변수에 여러 값이 담길 때 같은지만 비교할 때 사용한다.** switch문은 영역이 존재하고 탈출하고 싶을 때 break를 사용하여 탈출한다 . 2. 대입 연산자(복합 대입 연산..

[단과_JAVA] 2020.02.19

1. Data영역 1) 전역변수 : new로 필드에 올라가고 new로 초기화 된다.    객체별로 하나씩 존재한다. 공유하지 않는다. 2) static변수 : 컴파일러가 올려주고 new로 초기화되지 않는다.    단 한 개만 존재하기 때문에 모든 객체가 공유한다. 2. 접근권한 제어자 1) default : 다른 패키지에서 접근 불가(자식도 불가능)2) public : 모든 패키지에서 접근 가능3) protected : 다른 패키지에서 접근 불가(자식은 가능)4) private : 다른 클래스에서 접근 불가 3. 추상 클래스  : 클래스 내에 메소드를 선언할 때,    {}(바디)없이 선언한다면 추상적인 개념이라 할 수 있고,    자식 클래스에는 반드시 재정의 해주어야 한다.    따라서 이런 메소드를..

[단과_C] 2020.02.18

1. 비트 연산   : 비트연산은 주로 RGB, 네트워크, 직렬화 및 역직렬화(시리얼)에 사용1) 논리 연산자     & AND(논리곱) : 두 비트 모두 1일 때 1     | OR(논리합) : 둘 중 하나라도 1이면 1     ^ XOR(배타논리합) : 두 비트가 서로 다르면 1 2) 단항 연산자     ~ NOT(논리부정) : 0은 1로 1은 0으로 변경                              ~a = -a - 1 3) 부호 비트  : 비트는 우에서 좌로 읽으며 좌측에 있는 비트가 최상위 비트    부호비트는 최상위 비트이며 0은 양수, 1은 음수이다. 4) 비트 이동(쉬프트 연산자)         >> (RIGHT SHIFT) a >> b : a를 b만큼 우로 비트이동 ** 빈 칸은 ..

[단과_JAVA] 2020.02.18

1. instanceof  : 객체의 타입 비교     객체 instanceof 클래스타입      "안녕" instanceof String  : true   10 instanceof Double      : false    user instanceof Shinhan  : true  --> 신한은행 객체package objCompare;public class Obj { public static void main(String[] args) { System.out.println("안녕" instanceof String); System.out.println(new Double(10.58) instanceof Double); }}    2. 오늘 실습코드 1) 은행! ** ATM 메인메소드 **package..

[단과_C] 2020.02.17

1. 형변환 1) 자동 형변환     정수 + 정수 = 정수     정수 + 실수 = 실수     예) 3 + 0.0 = 3.0     문자 + 정수 = 정수     예) 'A' + 5 = 70 2) 강제 형변환     (자료형)값     예) (double)3 == 3.0 2. 변수를 사용하는 이유 1) 반복되는 값을 쉽게 관리하기 위해서     Why? 변수를 사용하여 출력하면 변수값 한 번만 변경해주면 되기 때문에2) 값에 의미부여를 하기 위해서    //어떤 의미로 출력했는지 알 수가 없음    printf("10");        //변수명을 통해 어떤 의미로 출력했는지 알 수 있음    int age = 10;    printf("%d\n", age) 3. 입력상태  : 커서가 깜빡이고 있는 ..

[단과_JAVA] 2020.02.17

1. 메소드부터 먼저 만들고 마지막에 뷰단을 만드는 것을 권장  2. 오늘 실습코드** 아직 완성된 코드가 아님, 다음 시간에 완성할 예정 **1) 은행!** ATM 메인 클래스 **package day24;import java.util.Random;import java.util.Scanner;public class ATM { public static void main(String[] args) { String msg = "1.신한은행\n2.국민은행\n3.우리은행\n4.나가기"; String menu = "1.계좌개설\n2.입금하기\n3.출금하기\n4.잔액조회\n5.나가기"; String[] bankName = {"신한은행", "국민은행", "우리은행"}; Scanner sc = new Scann..

[단과_C] 2020.02.14

1. 컴파일러 해석 방향  : 위에서 아래로 좌에서 우로 2. 제어문자  : 반드시 따옴표 안에서 작성한다.       \n : new line(줄바꿈, 개행문자)    \t : 위 아래 줄 맞춰 띄우기    \' : 작은 따옴표 표현    \" : 큰 따옴표 표현    \\ : \(역슬래쉬) 표현 3. 변수  : 변수는 저장공간이다        x = 0    저장공간의 대입 값(상수)    이름 연산자 4. 자료형자료형typebyte값정수형int(기본형)4 4, 1, -231, ... 실수형float4 0.0F, 1.0F, -4.156F, ... double(기본형)8 0.0, 1.0, -4.156, ...문자형char1 'a', '0', 'A', ... ** 1byte 정보의 최소 단위 **5. 변..

[단과_JAVA] 2020.02.14

1. casting1) up casting  : 부모 타입에 자식 값이 들어있는 기법   부모클래스명 객체 = new 자식생성자(); ** 부모와 자식간에 공통요소(재정의 메소드)만 사용 가능하며,     자식 클래스의 추가된 것들은 사용할 수 없다. ** 부모 타입으로 선언되었기 때문에 부모의 필드만 사용 가능하지만      자식 클래스에서 재정의 했다면, 재정의 된 메소드로 사용된다.        2) down casting  : 자식 타입에 부모 값이 들어가는 기법   자식클래스명 객체 = (자식클래스명) 업캐스팅된 인스턴스된 클래스; ** 자식 클래스 타입으로 부모 생성자를 호출하면 오류 발생     Why? 부모의 범위가 더 크기 때문에 자식에 담을 수 없다.** 부모클래스로 업캐스팅 되었던 클..

[단과_C] 2020.02.13

1. C언어   프로그램    OS(하드웨어에 적절한 전기 신호를 흘려주는 역할)    하드웨어 2. C언어는 이식성이 좋지 않지만 메모리를 효율적으로 관리하여 속도가 빠르다. 3. 컴파일 : 사람의 언어를 컴퓨터 언어로 바꿔주는 작업                ① 디버그 - 오류 검사                ② 빌드 - 실행프로그램 제작                ④ 링크 - 실행프로그램 실행                ③ 실행프로그램 4. 컴파일러(Visual c++ 2015) : 번역기 ** 안정화된 버전이란? 출시한지 꽤 기간이 지난 버전, 그리고 회사에서는 안정화된 버전을 사용함 ** ** 불안정한 버전이란 ? 최신 버전 **** 왜 회사에서는 안정화된 버전을 사용할까?    불안정한 버전은..