Java31 나 혼자 공부하는 자바 (생성자) 우선은 생성자 전에 상속이나 오버라이딩에 대해서도 있기는 하지만 그건 이미 이 전 글에 정리가 되어있어서 바로 생성자로 넘어왔다 생성자의 경우에는 분명 글이 있기는 하겠지만 내가 좀 더 이해를 해보기 위해서 다시 한 번 정리를 해보려고 한다. 상속이나 오버라이딩에 대해서도 간단하게 정리를 하자면 extends 를 통해서 클래스간 상속이 가능하며 부모 클래스에 있는 메서드는 자식 클래스에서도 메서드 선언 없이 사용이 가능하다는 점이 있다. 다만, 자바에서는 다중 상속이 안된다는 점이 있다 (다른 언어에서는 가능하다고 한다.) 오버라이딩의 경우에는 부모클래스의 메소드를 자식클래스가 동일한 형태로 구현하는 것을 메소드 오버라이딩이라고 한다. 그리고 메소드들은 동일한 이름으로 메소드 이름을 정할 수 없다 하지만.. 2022. 10. 5. 나 혼자 공부하는 자바 (객체 값 받는 법) 메소드에 값을 전달하는 것과 객체에 값을 전달하는 것은 엄연히 다르다 메소드에 객체를 전달할 경우 메소드에서 객체의 객체변수(속성) 값을 변경할 수 있다. public class Main { public static void main(String[] args) { 카운터 a카운터 = new 카운터(); System.out.println("before : " + a카운터.count); 숫자 a숫자 = new 숫자(); a숫자.숫자(a카운터.count); System.out.println("after : " + a카운터.count); } } class 카운터 { int count = 0; } class 숫자 { void 숫자 (int count) { count++; } } 위 코드에서 숫자라는 클래스는 in.. 2022. 10. 4. 나 혼자 자바 공부하기 (메소드 알아보기) 다른 프로그래밍 언어에는 함수라는 것이 별도로 존재한다. 하지만 자바는 클래스를 떠나 존재하는 것은 있을 수 없기 때문에 자바의 함수는 따로 존재하지 않고 클래스 내에 존재한다. 자바는 이러한 클래스 내의 함수를 메소드라고 부른다. ※ 보통 함수와 메소드가 공존하는 언어(예:파이썬)에서는 두 개를 구분하여 말하기도 하지만 자바는 보통 메소드와 함수를 구분하여 말하지 않는다. 다만 자바에서 사용되는 함수의 정확한 명칭은 메소드이다. 우선 메소드라는 것을 사용하는 이유에 대해서 알아보자 메소드를 사용하는 이유는 일단 우리가 코드를 짜다보면 같은 코드를 반복해서 적는 경우가 반드시 생기게 된다. 이럴 때 메소드가 필요한 것이라고 생각하면 되는데 여러 번 반복해서 적는다는 것은 언제고 또 다시 사용할만한 가치가.. 2022. 10. 4. 나 혼자 자바 공부하기 (클래스) public class Main { public static void main(String[] args) { 사람 a사람 = new 사람(); } } class 사람 { } 위의 코드는 사람이라는 클래스를 하나 만들었다 그리고 사람이라는 객체를 만들었다고 보면 된다. 지금 사람 a사람 = new 사람() 이라는 코드를 작성해서 사람이라는 객체를 하나 만들었다. 여기에서 a사람은 사람 클래스의 인스턴스라고 생각하면 된다. 저 사람 클래스에 무수한 인스턴스를 만들 수 있다 뭐 예를 들면 사람이라는 것을 전부 쓰면 된다. 예를 들면 사람 변호사 = new 사람 이 될 수도 있고 사람 의사 = new 사람 이 될 수도 있고 기타 등등 되게 많은 것들이 있다. public class Main { public st.. 2022. 10. 3. 2022-09-30 자바 (최대값 구하기) class Main { public static void main(String[] args) { int arr[] = {1,5,35,66,99,88,75,68}; int max = arr[0]; int maxIndex = 0; for (int i = 1; i max) { max = arr[i]; maxIndex = i; } } System.out.println(max); System.out.println(maxIndex); } } 위의 코드는 간단하게 for문을 통해서 배열의 최대값과 해당 인덱스를 구하는 코드이다. 해당 인덱스는 뭐냐면 최대값이 몇번째 배열에 속해있는지 알려주는 거다. int arr[] 는 총 8개의 값이 들어있고 8개의 배열이.. 2022. 9. 30. 2022-09-30 자바(숫자만 뽑은 후 더하기) class Main { public static void main(String[] args) { String line = "aa 11 bb 22 cc 33 dd 44"; System.out.println(solution1(line)); } static int solution1 (String s) { int sum = 0; String[] strArr = s.split(" "); for(int i = 0; i < strArr.length; i++) { if (strArr[i].matches("\\d+")) { sum += Integer.parseInt(strArr[i]); } } return sum; } } 위의 코드는 String line 변수에 들어간 값에서 숫자만 뽑아서 그 숫자들을 전부 더하는 코드.. 2022. 9. 30. 이전 1 2 3 4 ··· 6 다음