Java
-
다차원 배열, ArrayListJava 2022. 2. 28. 22:28
💡 2차원 이상의 배열 : 자료형[][] 배열이름 = new 자료형[행 개수][열 개수]; : int[][] arr = {{1,2},{3,4}}; => 선언&초기화 : for문(이중for문) => 행을 기준으로 잡고 -> 열을 돌린다 public class Array { public static void main(String[] args) { // 다차원 배열 int[][] num = {{1,2},{2,3},{3,4}}; for(int i=0; i 결과(인덱스에 해당하는 값) 리턴 ☞ String.join : String.join("구분자", 리스트객체), 일반 배열에도 사용가능 ex) 138,129,142 ArrayList import java.util.ArrayList; import java.util..
-
배열, 향상된 for문Java 2022. 2. 28. 19:33
💡 배열 Array : 자료형의 집합 : 자료형[] 배열명 = new 자료형[개수]; 한꺼번에 관리 : 선언과 동시에 초기화 가능, new 생략될수있음 cf) - 초기화할때 배열의 개수를 명시하지 않음 - 아무런 초기화 값 없이 선언만 한 경우, 정수는 0, 실수는 0.0, 객체배열은 null로 초기화된다 : 배열 길이(length) == 배열명.length 하나씩 차곡차곡 -> 연속된 자료 : 더이상 가능한 공간 없으면 -> 새로운 배열 만듦 => 자동으로 공간 안늘어남 (고정) 🔎 배열 선언 package array; public class Array { public static void main(String[] args) { int[] Num = new int[3]; // 방법1. 배열 선언 Num..
-
패키지, 접근 제어자, static 변수, singleton 패턴Java 2022. 2. 28. 17:13
💡 패키지 Package : 보통 소문자로 작성 : 클래스의 분류가 용이하다 (비슷한 것 끼리 묶는다) : 패키지가 다르면 동일한 클래스명을 사용할 수 있다 static 메서드에서는 멤버변수 사용불가 return serialNum;// static 변수, 클래스 변수 } } package staticex; public class StudentTest { public static void main(String[] args) { System.out.println(Student.getSerialNum()); // static메서드 안에 멤버변수 사용X -> 아직 생성 안됨 Student james = new Student();// new 할때마다 자동으로 ID값이 +1되는것을 원함 System.out.prin..
-
생성자, this, 객체 간의 협력Java 2022. 2. 22. 17:12
💡 생성자 Constructor * 객체변수에 값을 무조건 설정해야만 객체가 생성될 수 있도록 하기 -> 생성자 이용 🔎 생성자 규칙 : 클래스명과 메서드명이 동일하다 : 리턴타입을 정의하지 않는다 (void도 사용X) : 생성자는 객체가 생성될 때 호출된다. 즉, new 키워드가 사용될 때 호출된다 package com.company; class Animal { String name; void setName(String name) { this.name = name; } } class Dog extends Animal{ void sleep() { System.out.println(this.name + " zzz"); } } class HouseDog extends Dog { HouseDog(String ..
-
인스턴스, 정보은닉Java 2022. 2. 18. 20:57
💡 클래스 : 클래스로부터 객체를 만드는 과정 == 클래스의 인스턴스화 : 어떤 클래스로부터 만들어진 객체 == 그 클래스의 인스턴스 * 인스턴스는 참조변수를 통해서만 다룰 수 있으며, 참조변수의 타입은 인스턴스의 타입과 일치해야한다. * 객체 : 클래스에 선언된 모양 그대로 생성된 실체, '클래스의 인스턴스' * 인스턴스 : 실제로 구현된 구체적인 실체 클래스명 객체명 = new 클래스명; * 생성자 = 클래스이름 같아야한다 예) Card c = new Card(); -> 연산자 new에 의해 메모리(heap)에 Card클래스의 인스턴스가 생성된다, 주소생성 -> 생성자 Card()가 호출되어 수행된다 -> 연산자 new의 결과로, 생성된 Card인스턴스의 주소가 반환되어 참조변수 c에 저장된다 : C..
-
객체, 클래스, 멤버변수, 메서드Java 2022. 2. 18. 16:05
💡 객체 Object : 물리적으로 존재하거나 추상적으로 생각할 수 있는 것 중에서 자신의 속성을 가지고 있고 다른것과 식별 가능한 것 : "의사나 행위가 미치는 대상" : 구체적, 추상적 데이터 단위 💡 객체지향 프로그래밍 OOP : Object Oriented Programming : 객체를 기반으로 하는 프로그래밍 cf. 절차 프로그래밍 (Procedural Programming), 예: C언어 객체의 기능 구현 -> 객체 사이의 협력 구현 💡 클래스 Class : 클래스명은 각단어의 첫번째 문자는 대문자로 시작, '명사' : 클래스명 { } 클래스로부터 객체를 생성하여 사용 new : 자바의 모든 코드는 class 내부에 위치 : 하나의 클래스 두는것이 원칙, 여러개의 클래스가 있는경우 publi..
-
반복문Java 2022. 2. 16. 18:13
💡 반복문 : 주어진 조건이 만족 할 때까지 수행문을 반복적으로 수행한다 : while, do-while, for 💡 while : 조건식이 참인 동안 while문의 수행할 문장들을 반복하여 수행한다 public class WhileEx { public static void main(String[] args) { // 1부터 10까지 더하기 int num = 1; int sum = 0; while(num 조건식 만족 -> 수행문 실행 -> 증감식 실행 -> 조건식 만족 -> 수행문 실행 -> 증감식 실행 -> 조건식 불만족 -> for문 종료 : 초기화 할꺼 여러개면 , 로 구분해가며 여러개 작성 + 증감식도 마찬가지 : 초기화식, 증감식은 생략할 수 있다 => 잘 사용안함, 대부분 다 작성해서 사용 f..
-
조건문Java 2022. 2. 16. 17:21
💡 if : 조건을 판단해 해당 조건에 맞는 상황을 수행 : 조건식이 참이면 블록안 수행문 실행 : 조건판단에는 비교연산자(>,=,