Language/Java

    Java 인스턴스 멤버와 정적 멤버

    인스턴스 멤버 - 객체마다 가지고 있는 멤버 => 객체를 생성한 후 사용할 수 있는 필드와 메소드 public class Car { int gas; int speed; void setSpeed(int speed) { this.speed=speed; } } public class Test { public static void main(String[] args) { Car myCar = new Car(); myCar.gas=10; myCar.setSpeed(60); //여기선 gas와 setSpeed를 인스턴스 멤버라고 할 수 있음 } } this - 객체 내에서 인스턴스 멤버에 접근하기 위해 사용 Car(String mode){ this.model = model; //car클래스에는 이미 model fie..

    Java 메소드

    메소드 선언부 - 리턴 타입 - 메소드 이름 - 매개변수 선언 - 메소드 실행 블록 리턴타입 메소드이름 ([매개변수 선언]){ 실행코드 } void test(int x, int y){ //결과값이 없을 경우 void로 작성 } // 결과값이 있을 경우 int test1(int x, int y){ return x+y; } test(x,y); int result = test1(x,y); # 매개 변수의 개수를 모를 경우 // 배열 타입으로 선언 int sum1(int[] value){} // 배열 타입이 아니라 목록만 넘겨주는 방식 int sum2(int ... value){} sum1의 경우 메소드를 호출할때 배열 타입으로 매개변수를 넘겨줘야 하지만 sum2의 경우엔 값의 목록만 넘겨줘도 상관없음! int..

    Java 객체와 클래스

    객체(Object) 객체는 물리적으로 존재하거나 추상적으로 생각할 수 있는 것 중에서 자신의 속성을 가지며 식별 가능한 것을 말하고 속성인 필드값과 메소드를 가진다. 클래스(Class) 클래스는 주로 객체를 만들기 위한 설계도이며 실행 클래스와 라이브러리(API)용도의 클래스로 구분된다. 보통 클래스로부터 객체를 생성해서 사용하는데 그걸 주로 인스턴스라고 부르고 사용 방법은 다음과 같다. Test val; //클래스 변수; val= new Test(); // 변수 = new 클래스(); Test val = new Test(); // 클래스 변수 = new 클래스(); 그리고 클래스는 주로 필드(속성), 메소드, 생성자로 구성된다. 필드는 주로 객체의 고유 데이터, 상태 데이터 등을 저장하고 생성자(Con..

    Java의 배열

    배열 생성은 보통 타입[] 변수 = {값0,값1,...}; or int[] 변수 = new int[10]; 두 방식을 이용한다 하지만 미리 배열 변수를 선언한 후 값 목록을 나중에 결정하려면 다음처럼 작성한다. String[] test = null; test = new String[] {"1","2"}; 2차원 배열 보통 행렬의 구조는 int[][] test = new int[3][3]; //앞은 행 뒤에 숫자는 열을 의미 이렇게 선언한다. 하지만 계단식 구조로도 선언이 가능한데 int[][] test = new int[3][]; test[0] = new int[1]; test[1] = new int[2]; test[2] = new int[3]; 위처럼 선언하면 첫번째 행에는 배열 한개가 들어가고 2번째..

    Java 참조타입

    자바 타입은 보통 앞에서 배운 기본타입(int나 float 같은)과 참조타입(배열, 클래스, 열거, 인터페이스)으로 나뉜다. 참조타입은 보통 String을 예로 들면 String name= "test"; 가 있을 때 name에 test라는 내용을 가진 String 객체의 번지수가 저장된다. 즉, 번지 수를 참조해서 객체의 값을 읽어온다. 자바의 메모리 사용 영역 - 메소드 영역: 클래스 별로 정적 필드, 상수, 생성자, 메소드 등이 분류돼서 저장 - 힙 영역: 객체와 배열이 생성되는 영역 - JVM 스택 영역: 메소드가 호출되면 프레임이 추가되고, 메소드가 종료되면 프레임이 제거됨(여러 개의 프레임이 저장되어 있음) ##String 객체가 같은 번지를 참조하지 않게 하기 위해서는 new String을 사..

    Java 입출력

    System.out - 시스템의 표준 출력 장치로 출력 - println() method: 괄호 안의 내용을 출력 후 행을 바꾼다 System.out.println("test"); - print() method: 괄호 안의 내용을 출력만 하고 행 바꿈을 하지 않음 - prinf("형식문자열",값1,값2,..) method : 괄호 안의 첫 번째 문자열 형식대로 내용을 출력 ex) System.out.prinf("%s","test"); 주로 formatting으로 d(정수), f(실수), s(문자열) 사용 System.in - 시스템의 표준 입력 장치에서 읽음 int test = System.in.read(); => read 연산은 한글이나 통문자열을 읽을 수가 없어서 Scanner 사용 import ja..

    Java 변수 타입 정리

    타입에 따른 메모리 크기 short => 2B로 총 16bit char => 2B로 총 16bit 보통 하나의 문자를 저장한다 ex) char c = 'A'; # 10진수 또는 16진수 형태의 유니코드도 저장 가능! char c = 65; => 'A' int => 4B로 총 32bit long => 8B로 총 64bit String 타입은 문자열을 저장하기 위해서 존재! ex) String var = "name"; # escape 문자란? => 특정 문자를 포함시키거나 문자열의 출력을 제어하기 위해서 사용! ex) String str = "Hi \"K\"."; str1="hi \t guys"; (\t는 탭만큼 띄우고 \n은 줄 바꿈을 의미) 진수에 따른 표현식 2진수는 0b or 0B 시작해서 뒤에 bi..

    Java 시작하기 앞서 eclipse 설치 및 사이트

    앞서 공부하기 좋은 추천 사이트 https://www.devkuma.com/docs/java/ Java 입문 자바를 처음하는 사람을 위한 입문서 www.devkuma.com http://tcpschool.com/java/intro 코딩교육 티씨피스쿨 4차산업혁명, 코딩교육, 소프트웨어교육, 코딩기초, SW코딩, 기초코딩부터 자바 파이썬 등 tcpschool.com 자바란? - 객체지향 프로그래밍 언어로서 실행환경(JRE) + 개발도구(JDK) + 라이브러리(API)를 제공 - 각 운영체제에선 자바를 설치할 때 보통 JVM이 같이 설치 되기 때문에 운영체제와 상관없이 자바 프로그램이 어디서든 실행된다. Java API란? - Java로 프로그램을 만드는데 필요한 주요 기능을 미리 만들어서 제공 https:..