반응형

공부 149

자바 클래스

자바 세상은 클래스와 객체로 이루어져 있다. 그만큼 클래스와 객체라는 개념은 중요하다.   위와 같은 코드는 한가지 문제점이 있다.학생이 추가되면 추가될 수록 일일히 하나씩 만들어야 한다는 점이다.이러한 문제를 배열을 사용하여 사용하여 다음과 같이 간소화 시킬 수 있다.    하지만 이와 같이 코드를 최소화 시킨 것도 문제점이 존재한다.한 학생의 데이터가 studentNames[], studentAges[], studentGrades[]라는 3개의 배열에 나누어져 있다.따라서 데이터를 변경할 때 매우 유의해야 한다. 컴퓨터 입장에서는 문제 없지만 사람이 관리하기에는 좋은 코드가 아니다. 이러한 문제점을 클래스를 도입하여 해결할 수 있다. class 키워드를 사용하여 학생 클래스를 정의한다. 학생 클래스는..

공부/Java 2024.08.27

자바 메서드 관련 정리

변수 : 변수 이름은 일반적으로 명사를 사용한다. 한편 메서드는 무언가 동작하는데 사용하기 때문에 일반적으로 동사로 시작한다.이런 차이점 외에 변수 이름과 메서드 이름에 대한 규칙은 둘 다 같다. 메서드 사용의 장점 : 코드의 재사용, 코드의 가독성, 모듈성, 코드 유지 관리, 재사용성과 확장성, 추상화, 테스트와 디버깅 용이성 따라서, 메서드는 효율적이고 유지보수가 가능한 코드를 작성하는 데 매우 중요한 도구이다. **자바는 항상 변수의 값을 복사해서 대입한다** 메서드 오버로딩같은 이름이지만 매개변수를 다르게 하여 같은 이름의 메서드를 여러개 만들 수 있다.

공부/Java 2024.08.27

자바 메서드 오버로딩

자바는 메서드의 이름 뿐만 아니라 매개변수 정보를 함께 사용해서 메서드를 구분한다. 따라서 다음과 같이 이름이 같고, 매개변수가 다른 메서드를 정의할 수 있다. 매개변수가 다른 메서드를 여러개 정의하는 것을 메서드 오버로딩이라 한다. 오버로딩은 번역하면 과적인데, 과하게 물건을 담았다는 뜻이다. 따라서 같은 이름의 메서드를 여러개 정의했다고 이해하면 된다.주의) 매개변수가 같고 반환 타입이 다른 경우는 인정을 하지 않는다 *메서드 시그니처 = 메서드 시그니처는 자바에서 메서드를 구분할 수 있는 고유한 식별자나 서명을 뜻한다. 메서드 시그니처는 메서드의 이름과 매개변수 타입으로 구성되어 있다. 메서드 이름이 같아도 메서드 시그니처가 다르면 다른 메서드로 간주한다.    작은 크기에서 큰 크기로의 자동 형변..

공부/Java 2024.08.26

자바 메서드와 형변환

메서드를 호출할 때도 형변환이 적용될 수 있다. 메서드 호출과 명시적 형변환, 자동 형변환을 보자. 메서드를 호출하는데 인자와 매개변수 타입이 맞지 않다면 어떻게 해야할까? int보다 상대적으로 double이 크기 때문에 명시적 형변환을 진행해주어야 한다. 하지만 반대의 경우는 자동으로 형변환이 가능하다. 메서드를 호출할 때는 전달하는 인수의 타입과 매개변수의 타입이 맞아야 한다. 단 타입이 달라도 자동 형변환이 가능한 경우에는 호출할 수 있다.

공부/Java 2024.08.26

자바 메서드

위와 같은 계산은 둘 다 변수를 두개 선언하고 어떤 연산을 수행하는지 출력하고, 두 변수를 더해서 결과를 구하게 된다. 만약 프로그램의 여러곳에서 이와 같은 계산을 반복해야한다면, 같은 코드를 여러번 반복해서 작성해야하할 것이다. 더 나아가 부분 수정이 이루어지면 전체의 코드를 수정해야하는 문제점도 발생하게 된다.  이러한 문제를 깔끔하게 해결하기 위해 메서드를 사용한다.함수를 만들어 두고, 필요한 입력 값을 넣어서 해당 함수를 호출하면 된다. 그러면 계산된 결과가 나온다. 함수는 마치 블랙박스와 같다. 함수를 호출할 때는 외부에서는 필요한 값만 입력하면 된다. 그러면 계산된 결과가 출력된다. 같은 함수를 다른 입력 값으로 여러번 호출할 수 있고, 한번 정의해두면 계속해서 재사용할 수 있다.  publi..

공부/Java 2024.08.26

김영한의 자바 입문 자바 배열 문제 1편

1. 배열을 사용하여 문제를 개선하기   향상된 for문으로도 풀 수 있다.   2. 배열의 입력과 출력사용자에게 5개의 정수를 입력받아서 배열에 저장하고, 입력 순서대로 출력하는 예제이다.    3. 사용자에게 5개의 정수를 입력받아 배열에 저장하고, 입력받은 순서의 반대인 역순으로 출력하자.   4. 사용자에게 5개의 정수를 입력받아서 이들 정수의 합계와 평균을 계산하는 프로그램을 작성하자.    5. 이전 문제에서 입력받을 숫자의 개수를 입력받도록 개선해보자.

공부/Java 2024.08.25

자바 배열 2 (2차원 배열)

https://surrealcode.tistory.com/25 자바 배열 1배열이 필요한 이유는 같은 타입의 변수를 반복해서 선언하고, 반복해서 사용하는 문제를 해결하는 것이 바로 배열이다. 위와 같이 학생 5명의 점수를 출력하는 코드를 짠다고 가정하자.위의surrealcode.tistory.com 처음에 배웠던 배열은 단순히 순서대로 나열만 했던 배열이다. 이런 배열을 1차원 배열이라 한다.이번에 학습할 2차원 배열은 말 그대로 차원이 하나 더 추가된 배열이다. 2차원 배열은 int[][] arr = new int [2][3] 와 같이 선언하고 생성한다. 그리고 arr[1][2]와 같이 사용하는데, 먼저 행번호를 찾고 그 다음에 열 번호를 찾는다.행은 영어로 row 열은 영어로 culumn이라 한다. ..

공부/Java 2024.08.25
반응형