본문 바로가기

인스턴스2

[JAVA/자바] 객체지향 - 인스턴스, new, this 인스턴스? 클래스(설계도)에 따라 만들어진 제품(객체). 위와 같이 입력값의 합과 평균을 구할 수 있는 코드가 있다. 지금은 괜찮지만 프로그램이 커지고 코드가 복잡해진다는 상상을 해보았을 때 다른 누군가가 변수(left, right), 메소드(sum, avg)가 다른 의미로 사용할 수가 있고 버그로 이어진다. 이 문제를 해결하기 위해 위의 코드에서 변수로 상징되는 데이터, 연산으로 상징되는 메소드를 서로 연관되어 있는 것들끼리 그룹핑하는 객체지향의 개념이 탄생되다. 인스턴스, new 코드를 위와 같이 바꿔주었습니다. 이제 main메소드 안에 있는 new라는 코드를 살펴보겠습니다. Calculator 객체를 생성해서 변수 c1에 담아 구체적인 객체를 만드는 행위를 인스턴스라고 합니다. * 데이터형은 객체의.. 2022. 11. 6.
[JAVA/자바] method - static JAVA의 메소드 코드를 보면 public static void와 public void가 있다. static이 붙고 안붙고의 차이는 무엇일까? 메소드를 정의할 때 static이 있으면 class 소속 메소드를 정의할 때 static이 없으면 instance의 소속이다. 예제 ) 성격이 비슷한 a , b메소드를 class Print로 그룹핑 하였다. class Print의 a메소드와 b메소드에 인자값을 넣어주고 호출하였다. 하지만 새로 메소드를 호출할 때마다 인자 값(- , /)을 호출해야 하므로 그리 효율적이지 않다. 예제 2 ) 인스턴스를 만들고 t1, t2의 delimiter 값을 지정해주었다. 그리고 인스턴스 t1, t2의 a, b메소드를 호출해주었기 때문에 인자값(- , /)을 추가하지 않아도 된.. 2022. 11. 2.