Dev.Study 72

[JAVA] 자바 인터페이스 형식, 사용 예시

연결자를 뜻함. 인터페이스에 선언한 클래스는 반드시 정의되어 있어야 한다. 메뉴판 -> 인터페이스 형식) interface 인터페이스명 { //필드 public static final int su = 0; //static -> 정적 메모리할당, new -> 동적 메모리할당 //선언된 메소드 public abstract void print(); } interface의 구성멤버는 필드, 선언된 메소드로만 구성된다. void print() { } →정의된 메소드, 구현된 메소드 void print(); →선언된 메소드(바디없는, 영역괄호 없는 메소드) 선언된 메소드의 접근제한자 명시는 public만 할 수 있다. 다른 접근제한자는 불가능 public과 abstract는 생략가능하다 생성한 인터페이스는 클래스에..

Web develop/JAVA 2019.04.23

[JAVA] 자바 this 레퍼런스 변수 형식, 사용법

자기자신의 속성을 가리키는 또다른 이름 메소드 내에서 사용 객체 생성자내에서 다른 생성자를 호출시 사용 매개변수(지역변수)와 멤버변수(필드)를 구분하기 위해 멤버변수 앞에 this.를 붙여 사용 형식) this.필드명; this.메소드명(); this(); //생성자 호출 참고) super.필드명 super.메소드명(); super(); //부모클래스 생성자 호출 this 예제 public class Abc { int su; public Abc() { this(100); } public Abc(int su){ this.su = su; } } Abc a = new Abc(); System.out.println(a.su); //100 //this(100); 표기안할시 0 Abc a = new Abc(500)..

Web develop/JAVA 2019.04.22

[JAVA] 자바 접근제한자(AccessControl)

public : 서로 다른 패키지에서도 접근 가능 protected : 서로 같은 패키지에서 접근 가능, 만약 상속관계를 갖는다면 다른 패키지라도 자식이 부모를 참조. default (생략): 서로 같은 패키지에서 접근 가능 private : 같은 클래스 내에서만(멤버끼리만) 접근가능 => not visible. 볼수없음으로 에러뜸 접근지정자 위치 필드[접근지정자 4개] 자료형 변수명; 메소드[접근지정자 4개] 리턴자료형 메소드명( ){} 클래스[접근지정자 2개(public, default)] class 클래스명{} 한 개의 파일에 두개 이상의 클래스를 정의하는 경우, 저장 파일명 클래스에만 public과 같은 접근제한자를 명시할 수 있음

Web develop/JAVA 2019.04.21

[JAVA] 자바클래스 생성자(Constructor)

생성자 (Constructor) : 새로운 객체를 생성하기 위해서 초기화해주는 메소드 생성자의 이름은 반드시 클래스명과 일치해야한다.(대소문자 일치) void를 포함한 리턴자료형을 명시하지 않는다. 객체 생성시 자동으로 호출된다. 클래스 내에 생성자가 하나도 없다면 자바 컴파일러가 컴파일시 자동으로 기본생성자를 추가 주의) 만약 클래스 내에 한 개 이상의 생성자가 정의 되어 있다면 컴파일러는 생성자를 자동추가하지 않는다. class Abc { int su; My my; Abc(){ //기본생성자(매개변수 비어있는 생성자), 초기화(값 할당) 메소드 // 멤버필드에 대한 초기화 작업 su = 10; my = new My(); }//생성자 Abc(String name){ //오버로딩 생성자 } ABc(int..

Web develop/JAVA 2019.04.21

[JAVA] 객체지향의 특징 (상속, 캡슐화, 다형성)

상속 부모가 갖는 자원(필드,메소드)을 물려주는 것 관련키워드 extends =⇒ is a 관계 class My extends 부모클래스명{ } class Parent extends Object{ //Object: 최상위클래스, 기본값. } class Child extends Parent{ } Object 클래스 : 최상위클래스. 자바의 모든 클래스의 부모클래스 java.lang.Object 부모클래스, 상위클래스, super | java.lang.String 자식클래스, 하위클래스, sub 캡슐화 필드와 메소드를 묶어주는 것 정보 은닉 모듈성 다형성 메소드 오버라이딩(MethodOverriding) 부모가 갖는 메소드를 자식클래스에서 재정의 상속에서 나온 개념 class Parent { int x = ..

Web develop/JAVA 2019.04.21

[자바] 주민번호 입력하여 나이구하기

public class JuminBunhoTest { public static void main(String[] args) throws Exception{ Calendar cal =Calendar.getInstance(); int year = cal.get(Calendar.YEAR); System.out.print("주민번호를 입력하세요('-' 포함):"); BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); String id = br.readLine(); String birthYear = id.substring(0,2); char ch = id.charAt(7); int age; if(ch < '3') { // '3'은 문..

Web develop/JAVA 2019.04.21

[JAVA] 자바 데이터 입력 (System.in.read() , BufferedReader 사용)

프로그램 실행 도중 필요한 시점에 데이터를 입력받는 것. 변경되는 데이터를 소스프로그램 변경없이 외부에서 전달하기 위해 사용(학점구하기, 성별구하기 등등) byte 단위 입력 숫자입력(0~9) System.in.read() -48; 키보드입력 ---> 프로그램에서 받는 값 ==>ASCII코드 값 0 ---> 48 -->ASCII코드 값 1 ---> 49 3 ---> 51 문자입력 char ch = (char)System.in.read(); 키보드입력 ---> 프로그램에서 받는 값 a ---> 97 b ---> 98 c ---> 99 A ---> 65 System.out.println(97); ==> 97 System.out.println( (char)97 ); ==> a 라인 단위 입력 객체생성 Buff..

Web develop/JAVA 2019.04.21

[JAVA] 조건문, 반복문

조건문 : 조건에 따라 실행할 문장들을 제어하는 역할. 반드시 메소드 내에 기술해야 함 if문 if(조건식) //조건식 conditions : boolean 데이터 { //조건식 결과가 참일때 실행할 문장 } if() System.out.printlln("hi") //실행문이 한개일경우 {}영역 괄호 생략가능 if ~ else문 if(조건식){ 조건식의 결과가 참일 때 실행할 문장; } else { 조건식의 결과가 거짓일 때 실행할 문장; } if ~ else if ~ else문 : 서로 연결된 조건식을 표현할 때 사용, 필터링, 수의 범위표현 if(조건식1){ 조건식1이 참일 때 실행할 문장; }else if(조건식2){ 조건식 1이 거짓이고 조건식2가 참일 때 실행할 문장; }else if(조건식3)..

Web develop/JAVA 2019.04.17

[JAVA] 자바 연산자 종류

산술연산자 + , - , * , /(몫) , %(나머지) 문자열 더하기 "문자열1" + "문자열2" => "문자열1문자열2" "문자열" + 33 => "문자열33" 55+"문자열" => "55문자열" 1+2+"안녕" = "3안녕" "안녕"+1+2 = "안녕12" 증감연산자 변수명++ // 후위연산자. 변수값을 가져오고 그 후에 +1 해준다 ++변수명 // 전위연산자. 변수값을 가져오기 전 +1 해준다 i++; //i=i+1 i--; //i=i-1 변수명 += n; // 변수명=변수명+n; 변수명 -= n; // 변수명=변수명-n; 변수명 *= n; 변수명 /= n; 변수명 %= n; 비교(관계)연산자 (결과값 boolean) >, =, 모든 조건(A,B)를 만족했을 때 결과값 true A || ..

Web develop/JAVA 2019.04.17

[JAVA] 자바의 구성요소 (변수, 클래스, 메소드)

JAVA 자바는 썬 마이크로시스템즈의 제임스 고슬링과 다른 연구원들이 개발한 객체지향적 프로그래밍 언어이다. 처음에는 가전제품 내에 탑제해 동작하는 프로그램을 위해 개발했지만 현재 웹 애플리케이션 개발에 가장 많이 사용하는 언어 가운데 하나이고, 모바일 기기용 소프트웨어 개발에도 널리 사용하고 있다. 자바는 운영체제로부터 자유롭다. JVM(Java Virtual Machine)으로 새 운영체제를 사용한다. 자바 프로그램의 구성요소 : 필드(field), 메소드(method), 클래스(class) 필드(field, 변수) 데이터 속성, 자료구조, 데이터를 담는 그릇 첫글자 소문자. 단어 뒤에 () 소괄호 포함X 변수 형식 자료형 변수명; //변수선언 자료형 변수명 = 데이터값; //변수 선언과 초기화(값 ..

Web develop/JAVA 2019.04.17