⁂ Java

    [JAVA] #6-2 Final

    1. final final이 어떤 뜻일까? 마지막, 마무리와 같은 뜻이다. 이 뜻처럼 final을 붙임으로 값을 못바꾸는 상수화 시키는 개념(자바스크립트 : const)을 말한다. - 변수에 붙으면 변수를 상수화한다. - 함수에 붙으면 더 이상 함수를 리폼(override 재정의)할 수 없다. - 클래스에 붙으면 그 클래스는 종단 클래스, 즉 후손 클래스를 만들 수 없다. package oop0913; import java.util.Calendar; // 1) final 클래스(종단 클래스) /* final class Animal{} // class end class Elephant extends Animal {} 에러, final 클래스는 상속받을 수 없다 */ // 2) final 메소드 class ..

    [JAVA] #6-1 Static

    Static의 기억해야 할 두 가지 특징부터 알아보자 1) 간단하고 편리하다(빠르다) 2) 연산은 계속 continue 된다(쌓인다) * 전체 코드 1 : 기본 패키지 package oop0913; public class Test02_static { public static void main(String[] args) { // static 정적 // -> 변수 앞에 붙으면 정적 변수 또는 클래스 변수 // -> 함수 앞에 붙을 수도 있다 // static에 저장해달라는 뜻 // 메모리 생성 1번, 소멸도 1번 된다 // new 연산자를 이용한 별도의 객체 생성 없이 사용가능하다 // static은 클래스명으로 직접 접근 가능하다 // -> 클래스명.변수 // -> 클래스명.함수() /* System.ou..

    [JAVA] #5-5 This와 This()

    1. This? This란 클래스가 자신을 가리키는 대명사이다. 일반지역변수와 멤버변수를 구분하기 위해 자주 사용된다. * This()도 있다. 자신의 생성자 함수를 호출할 때 사용된다. package oop0913; class Score{ // 멤버 변수 field private String name="손흥민"; private int kor, eng, mat; private int aver; // 생성자 함수 constructor // 생성자 함수를 오버로딩 하면 기본생성자 함수는 자동으로 생성되지 않는다. // So! 기본생성자함수는 수동으로 생성하는 것을 추천한다. public Score() {}; public Score(String name, int kor, int eng, int mat) { t..

    [JAVA] #5-4 String 메서드

    1. String 메서드? 자바스크립트에서도 자주 사용했던 String. 이것은 문자열 관련 클래스를 통칭하는 단어이다. 이 String 안에서 사용할 수 있는 여러 메서드를 알아보자. 1) equals() 만약 클래스에서 문자열과 문자열을 서로 비교하고 싶을 때 어떻게 해야할까? 아래의 코드를 확인해보자. String str="HAPPY"; String name = new String("HAPPY"); if(str==name) { System.out.println("같다"); } else { System.out.println("다르다"); } // if end 결과가 어떻게 나올까? 다르다로 나온다. 왜냐하면 == 는 데이터들의 주소값을 찾기 때문이다. 그래서 이때는 equals() 메서드를 사용해야한..

    [JAVA] #5-3 생성자 함수(Constructor)

    1. 생성자 함수란? 생성자 함수란 클래스 변수에 메모리를 할당, 즉 인스턴스를 만드는 과정에서 호출되는 함수를 뜻한다. 그래서 클래스명과 동일한 함수이다. new 연산자와 함께 메모리를 할당할 때 사용하며 오버로딩(overloading)도 가능하다. 이와 반대되는 개념인 소멸자 함수도 다른 언어에는 개념이 존재하지만 자바에는 존재하지 않는다. JVM이 자동으로 쓰레기 데이터를 Garbage Collecting을 통해 메모리를 회수하기 때문이다. 우선 생성자 함수를 사용해보자. 여기서는 달력과 관련된 함수를 사용해보려 한다. new GregorianCalendar() 이 함수를 입력하면 자동으로 임포트까지 완료된다. 이 함수를 today라는 참조변수에 담아서 사용해보고자 한다. 이 때 자바에서 또 사용해..

    [JAVA] #5-2 New 연산자 - 참조 자료형을 이해해보자

    New 연산자 클래스를 사용하려면 클래스에 메모리를 할당하고 사용하여야 한다. 그 때 사용하는 연산자가 바로 new 이다. 형식은 아래와 같다. new 클래스명() 그리고 이렇게 선언되어서 메모리가 부여된 하나의 클래스를 객체라고 말한다. 1) 클래스의 Type 자바에는 기본적인 자료형이 있다. 예를 들어 int a=3; 에서 int는 메모리 4바이트를 할당한다. 위에서 만들었던 Sungjuk() 클래스를 new 연산자로 선언하면 Sungjuk() 클래스에 메모리가 할당된다. 이런 형태로 메모리가 할당되는 것을 참조 자료형(reference)이라고 부른다. 이 참조 자료형에 메모리가 할당되는 방식은 RAM(Random Access Memory)의 heap 영역에 메모리가 할당되고 주소값이 발생되면서 진행..