반응형

자바/자바 입문 공부일지 56

자바 기초 공부 일지 16. String 인스턴스

String 을 생성하는 방법은 두 가지 입니다. String str1 = new String("Simple String"); String str2 = "The Best String"; 둘 다 인스턴스가 생성되고 그 값이 반환됩니다. 이 두 가지의 방법에 차이점이 있는지 확인해볼게요. String word1 = new String ("보드마카"); String word2 = new String ("보드마카"); String word3 = "스피커"; String word4 = "스피커"; new 사용 : 문자열의 내용과 무관하게 새로운 객체를 생성합니다. 내용이 같고 다르고를 제외하고 새로운 참조 자료가 만들어집니다. word 1의 보드마카라는 문자열이 메모리에 올라갑니다. word 2의 보드마카라는 문..

자바 기초 공부 일지 15. 메소드 오버로딩, this 참조 변수

● 메소드 오버로딩이란 같은 이름의 메소드를 중복으로 만들 때를 의미합니다. 자바에서 한 클래스에 같은 이름의 메소드를 두 개 이상 받을 수 없지만, 매개변수의 개수 혹은 타입을 다르게 하면 같은 이름을 사용할 수 있습니다. 메소드 오버로딩은 1. 메소드의 이름이 같을 것 2. 메소드의 매개변수 개수 또는 타입이 다를 것 두 가지 조건이 만족되어야 합니다. 메소드의 매개 변수가 여러 가지일 때 매개변수 정보가 다른 메소드가 있을 때에는 컴파일이 판단을 해서 오버로딩을 합니다. 만약 int 정수 하나가 들어가는 메소드a와 int 정수, double 실수가 하나씩 들어가는 메소드b가 있을 때 3, 3.15 의 값을 매개변수로 넣는다면, 메소드 b를 출력합니다. 정수와 문자열이 있을 경우에 어떤 메소드를 오버..

자바 기초 공부 일지 14. System.out.println, public static void main(), static 초기화 블록

이제 클래스 변수와 인스턴스 변수, 클래스 메소드와 인스턴스 메소드를 배웠으니 지금까지 의심없이 사용해왔던 System.out.println(" "); 을 보다 자세하게 살펴볼 수 있습니다. ● import java.lang (자바 랭귀지) 는 자바의 기본 기능이 내제되어 있는 패키지(표준 라이브러리) 이므로 import 를 작성하지 않아도 자동으로 적용이 됩니다. System.out.println(...) ; System -> 은 패키지에 묶여있는 클래스 이름 out-> 은 클래스 변수 이름 (출력관련 참조 변수 그 안에는 println 이라는 메소드가 있습니다.) println -> 은 out 이 참조하는 인스턴스 메소드 public static void main(String[] args) { sta..

자바 기초 공부 일지 13. 클래스 변수와 인스턴스 변수, 지역 변수, 클래스 메소드와 인스턴스 메소드

● 필드 field 란 클래스에 포함된 변수들을 의미합니다. 필드 안에서 변수들은 클래스 어디에 위치하는지에 따라 클래스 변수(static 변수, 정적 변수), 인스턴스 변수, 지역 변수로 나뉩니다. class Number{ static int num = 0; // 클래스 변수 String modelName; // 인스턴스 변수 void method() { int something = 10; // 지역변수 } 클래스 변수와 인스턴스 변수, 지역변수에 대해서 간단하게만 설명을 하자면 클래스 변수란 처음 static 으로 선언된 변수이며 인스턴스 변수란 클래스 내부에 선언된 변수이고 지역 변수란 메소드 블럭(메소드나 생성자, 초기화 블록 내) 안에 선언된 변수입니다. 자세한 것은 하단에서 함께 볼게요. ● ..

자바 기초 공부 일지 12. 생성자와 String 클래스 (수정중)

생성자(constructor) : 클래스 기반의 객체 생성시 동작하는 메소드로 파이썬에서의 생성자와 동일합니다. 자바에서는 new 로 생성이 됩니다. String 클래스는 자바의 표준 클래스로 만들기 전부터 자바에 존재하는 클래스입니다. 문자열 char 는 참조형이 아니지만 String 은 참조형입니다. 코드상에서 문자열 표현은 String 인스턴스의 생성으로 이어집니다. // 가급적 인스턴스 변수로 서로를 구별할 수 있게 해줍니다. (문자열을 이용해서) // 식별할 수 있는(인스턴스를 구분할 수 있는) 정보를 가지게 해줍니다. 자바의 생성자 만들기 규칙 1. 메소드 이름이 클래스 이름과 동일하다. 2. 반환형이 존재하지 않는다. 반환할 것이 없으면 void 라고 붙일 수 있게 되어 있는데, 생성자가 반..

자바 기초 공부 일지 11 . ★ 클래스와 인스턴스, 삼각형의 넓이 구하기

클래스는 데이터와 기능의 집합입니다. 클래스를 만드는 목적은 프로그램의 실행부에서 가져다 쓸 데이터 또는 기능을 정의하는 것이에요. 데이터와 기능이 든 주머니라고 생각하면 좋을 것 같아요. public class BankCustomer { public static void main(String[] args) { } } 만약 BankCustomer 이라는 main 클래스를 만들면서 이 클래스 안에서 쓸 다른 클래스를 만든다고 한다면 상단에 class를 추가해서 만들 수 있습니다. class Account{ int balance = 0; // 인스턴스 변수 void deposit(int money) { // 인스턴스 메소드(규칙 : static을 쓰면 안 된다.) balance = money; } void ..

자바 기초 공부 일지 10. 메소드의 재귀 호출

재귀에 대해서는 이전에 파이썬에서 한 번 알아본 적이 있습니다. 팩토리얼 함수를 예시로 했었습니다. https://blue-dot.tistory.com/21 파이썬 공부일지 18. 함수의 활용(재귀함수)! 이제부터는 앞서 배운 함수를 어떻게 활용하는지에 대해서 공부합니다. 1. 재귀함수 재귀함수는 함수 내부에서 같은 기능을 사용하는 거예요. 재귀는 자기 자신을 호출한다는 의미를 가지고 있 blue-dot.tistory.com 이번에도 팩토리얼로 표현하자면 n! = n * (n-1)! -> 이것을 코드로 그대로 옮기도록 돕는 것이 재귀 메소드입니다. 재귀적인 함수를 표현할 때 우리에게 반드시 필요한 것은 종료 조건입니다. 끝날 시점이 있는 재귀적 함수를 구현해야 안전하게 작성될 수 있습니다. return ..

자바 기초 공부 일지 9. 메소드 method

메소드의 정의와 호출! 자바에서 메소드는 함수입니다. 함수가 클래스에 포함되어 있으면 메소드라고 하기 때문에 자바에서의 메소드는 통상적으로 함수를 뜻해요. 메소드는 여러 개를 작성해서 여러 번을 사용할 수 있기 때문에 코드가 복잡해지거나 가독성이 떨어지는 경우에 효율적이에요. 메소드 중 main 이라고 하는 코드 블럭이 시작점입니다. 이것은 자바의 규칙으로 프로그램은 main 에서부터 시작됩니다. 이것은 메소드 이름이 main 이고 중괄호 내 문장들이 순차적으로 시작하는 것입니다. main은 자바 프로그램의 엔트리 포인트라고 해요. 그 외의 메소드들은 모두 일반 메소드입니다. 즉 일반 메소드는 메소드 내부에서 선택적으로 불러낼 수 있는 코드 블럭입니다. package day13; public class ..

자바 기초 공부 일지 8. 반복문 while문, for문, break와 continue, 중첩 반복문

● while은 파이썬에서 사용하던 것과 기존 문법이 비슷합니다. while(반복 조건문){ 반복영역 } 조건문이 참일 경우에 하단의 반복영역이 계속 반복됩니다. 자바에서는 주로 while과 증감연산자를 같이 섞어서 사용합니다. package day12; public class Test03 { public static void main(String[] args) { int num = 1; while(num search 변수 값을 불리언 false 로 선언했어요. while(num num의 값이 100미만일 경우에 반복하는 while 조건문을 작성합니다. if(((num % 5 == 0)&& (num % 7 == 0))) { -> 만약 5와 7이 0으로 나누어 떨어지는 조건문이 성립을 한다면 search ..

자바 기초 공부 일지 7. 조건문 조건제어 if문, else, else if, switch문, break문 과일 바구니 예제 문제

파이썬에서 배웠던 if 조건문과 형태가 무척 비슷하지만 조금씩 다른 자바. 다른 것보다 눈에 익혀두는 것이 시간이 걸릴 것 같아요 ^^ㅠ ● 자바의 if 조건문 알아볼게요. if (ture or false) { -> 불리언 데이터가 들어가거나 불리언 값이 나오는 조건문 조건 true 시 실행되는 영역 } package day12; public class if_ex { public static void main(String[] args) { // 조건 : 불리언 표현식 int age = 24; if(age 10) System.out.println("청소년"); else if(age > 5) System.out.println("어린이"); else System.out.println("아기"); } } 여기까..

반응형