분류 전체보기 (6) 썸네일형 리스트형 [JAVA] 컴퓨터 프로그래밍 - 인터페이스 인터페이스클래스의 틀이라고 생각하면 됨. 클래스에 대한 규약같은 느낌.클래스의 규칙이기 때문에 메소드 구현이나 인스턴스 변수는 선언하지 않음static 변수와 어떤 메소드를 쓸지만 정해주는 규칙임interface ClsRule{ int a = 10; // 자동으로 public static final 로 선언됨 void anyMethod(); // 중괄호로 내용 주면 안됨. 그냥 얘를 꼭 써야 한다고 명시만 하는 역할. // 자동으로 public abstract로 선언됨}인터페이스 안에 선언되는 변수는 무조건 static final 변수이어야 함.-> 인스턴스 변수 생성 불가인터페이스 안에 선언되는 메소드는 무조건 public abstract으로 선언해야함.-> {}(중괄호) 로 뒤에 구현.. [JAVA] 컴퓨터 프로그래밍 - Class 추가 클래스 내부의 클래스 ( Nested Class )클래스 내부에 클래스를 또 선언할 수 있으며, Nested Class(중첩 클래스) 라고 부름Nested Class는 두 가지로 갈리는데,안쪽 클래스가 일반 클래스 라면 Inner Class라고 부르며안쪽 클래스가 Static 클래스 라면 Static Nested Class라고 부른다.Outer Class와 다른 점은 Inner Class는 접근제어자를 4가지(public, private, protected,(없음)) 사용 가능하다는 것.class OuterClass{ class InnerClass{} static class StaticNestedClass{} }Inner Classstatic이 아닌 클래스로, 바깥쪽 클래스의 인스턴스 변수/메.. [JAVA] 컴퓨터 프로그래밍 - 변수 기초 Variables (변수)흔히 아는 그 변수 맞음.변수 종류기능인스턴스 변수그 객체에 한해서 저장되는 특수한 변수임클래스 변수(Static)클래스에 한해서 같은 값을 가짐. 그 클래스의 인스턴스들끼리 공유하는 변수지역 변수그 변수가 선언된 블록에 한해서 접근 가능파라미터메서드에서 받는 매개변수. 그 메서드 안에서만 접근 가능Variable naming$ 기호나 _ 를 처음에 사용하지 말 것.숫자로 시작하면 안됨.$, 문자, _(언더바) 사용 가능.camelCase를 기본으로 함상수인 경우 대문자로 함.Primitive data type ( 일반 변수 )byte, short, int, long, float, double, boolean, char값을 바로 가지고 있는 타입. 크기가 정해져 있다.기본값이 고.. [JAVA] 컴퓨터 프로그래밍 - Class 기초 Class객체의 청사진. 붕어빵 틀이라고 생각하면 편함.같은 클래스에서 나온 객체들은 같은 기능을 가짐클래스의 접근 제어자는 두 가지 존재함접근 제어자기능( 없음 )같은 패키지에 한해서 호출 가능 ( 타 소스에서 임포트 해서 호출해도 호출 불가)Public다른 패키지에서 임포트 해서 호출 가능추가) 하나의 .java 파일에서는 public class가 하나만 존재할 수 있음ex) Box.java 파일에는 public class Box 만 public 클래스로 존재 가능.이름도 동일해야 함!InstanceClass를 기반으로 하는 객체 붕어빵이라고 생각하면 편함여러 붕어빵을 찍어낸다고 했을 때, 각 붕어빵은 구조는 같아도 팥의 양 같은 내부 값은 다를 수 있음.Inheritance (상속)한 클래스가 다른.. [JAVA] 컴퓨터 프로그래밍 - 개념 정리 자바는 컴파일러 / 인터프리터 ?우선 소스 코드를 컴파일함 -> .java 파일에서 .class 파일로 변환이후 JVM이 .class 파일을 인터프리트 함JIT(Just In Time) 컴파일러런타임(실행 중)에 코드를 바로바로 컴파일 하여 저장.JIT 컴파일러는 언제 쓰는가? 인터프리팅 과정에서 사용됨자주 쓰이는 코드를 미리 컴파일해서 저장해놓음. ex) 반복문자바 플랫폼JVM + API 로 구성되어 있음JVM(Java Virtual Machine)자바를 실제로 실행시키는 주체.컴파일과 실행 모두 담당API함수 / 클래스 등 패키지 들의 집합.라이브러리들이 모여있음.Object (객체)Object : 소프트웨어 묶음 field + behavior 임field : 변수 / 메소드 등 내부 값( 인스턴스마.. [JAVA] 컴퓨터 프로그래밍 - 인터페이스 vs Abstract 클래스. abstractAbstract class abst{ int A; // 인스턴스 변수 선언 가능 public void msd1(){ // } abstract void msd2(); // 추상 클래스는 절대 {} 내용을 가질 수 없음. 그냥 적는것도 안됨 // 내부에 abstract 메소드 사용 가능 ( abstract 함수는 abstract 클래스 안에서만 선언 가능함) // 공용 변수 / 메소드 정의 가능}Interface규칙 느낌이 강함. 변수가 final로 고정되는 것도 그렇게 생각하면 편함interface itface{ int y; // ❌ 초기화 안되어 있음 int x = 10; // ✅ 인터페이스 안에 모든 변수는 public stati.. 이전 1 다음