언어/Java
-
[Java] 스코프언어/Java 2020. 12. 26. 20:11
자바의 모든 변수는 중괄호 내에 선언되고 사용됩니다.파이썬의 스코프와는 살짝 다르게 자바에선 중괄호 내에 선언된 변수는 해당 중괄호가 닫히면 메모리에서 자동으로 없어지므로 사용이 불가능 합니다. (전역변수 X)자바public class Main { public static void main(String[] args) { int var1; if (...){ int var2; // var1, var2 사용가능 } for (...){ int var3; // var1, var3 사용가능 // var2 사용불가 } // var1 사용가능 // var2, var3 사용 불가 } }파이썬var1 = '' if ...: var2 = '' # var1, var2 사용가능 for ...: var3 = '' # var1, ..
-
[Java] static 사용 예제언어/Java 2017. 2. 10. 11:13
스타크래프트의 마린(유닛)을 예로 들었습니다.마린의 최고체력은 static을 붙여야겠죠. 현재체력은 붙이면 안되고요. 모든 마린들의 최고체력은 같으니까요. 현재체력은 마린(인스턴스)마다 다르겠죠. 마린의 공격력 역시 static을 붙여야겠죠? 모든 마린의 공격력은 같아야하니까요. 마린의 공격력을 향상시키는 upgradeWeapon()함수가 있다면 이 함수는 static변수인 마린의 공격력을 향상시키는 일을 한다고 가정하고요. 이 함수에는 static을 붙여야 합니다. 이 함수는 static변수에 대한 작업을 하니까요. 만일 마린의 체력을 소모시키는 steamPack()메서드에는 static을 붙일 수 있을까요? 붙일 수 없습니다. 현재체력을 감소시키는 일을 해야하니까... 인스턴스 변수에 대한 작업을 해..
-
[Java] 자바 용어 정리언어/Java 2017. 2. 10. 11:01
클래스(Class)클래스란 어떤 특정 종류의 모든 객체들에 대해 일반적으로 적용할 수 있는 변수와 메소드를 정의하고 있는 소프트웨어적인 설계도(blueprint) 또는 프로토타입(prototype). 실세계에 존재하는 객체들이 가질 수 있는 상태와 행동들에 대해 소프트웨어적으로 추상화(abstraction)한 것추상클래스추상 클래스는 객체가 가지는 특성들을 추상화시켜 놓았을 뿐 아직 구체화 시키지 못한 클래스이므로, 이 추상클래스를 상속하는 하위 클래스에서 좀 더 구체화 시키도록 하는 것입니다. 따라서, 추상클래스를 상위 클래스로 하여 상속하는 하위 클래스는 추상클래스인 상위 클래스에서 완전히 구현하지 못한 부분들을 완전하게 구현해 주어야만 하위 클래스에 대한 객체 생성이 가능하고, 그렇지 못할 경우 하..