전체 글 40

자바에서 배열을 그냥 출력하면?

자바에서 배열의 값을 출력하는 방법1. 일반적인 방법 : for 문 2. 반복문 없이 특정 인덱스만 직접 출력 3. 배열 전체를 한 줄로 출력 궁금한 점3번 방법에선 list3 배열의 내용을 문자열로 바꾸고 출력하는데, 왜 그냥 System.out.println(list3)을 하면 안될까?왜 배열을 문자열로 바꿔야 출력할 수 있을까?for문 에선 문자열로 바꾸는 과정이 없는데? 답 System.out.println(list3) 하게 되면, 위 사진처럼 배열의 내용이 아니라 "배열이 저장된 위치" 주소 정보가 나온다. for 문 안에서는 배열 전체를 문자열로 바꾸는 것이 아닌, 배열 안 "하나하나의 값"을 직접 꺼내서 출력하기 때문에 문자열로 변환할 필요가 없다. 비교정리배열 전체 한번에 출력toStrin..

데이터베이스 개요

Disk : 컴퓨터 저장장치 (HDD, SDD 등), DB와 파일, 영구적 저장DB : 데이터를 구조적으로 저장해놓은 저장소 (EX. 회원정보, 주문기록 등) ERD : 데이터베이스의 구조를 시각화 DBMS : 데이터베이스 관리 시스템, SQL을 통해 데이터를 저장 수정 삭제 조회할 수 있다.Database 정의 : 한 조직의 여러 응용시스템들이 공용하기 위해 통합, 저장한 운영 데이터의 집합 * 응용시스템 : Application (수강신청App, 교직원App, 교수진App)Data Model : Relation Model, Entity-Relationship(E-R) Data Model, Object-based Data Models, 기타 등등Relatio..

상속, 호출, 생성자

상속 : 부모의 필드, 메서드를 내 것처럼 자동으로 갖게 하는 것호출 : 부모의 생성자를 직접 불러서 실행하는 것 상속 -> 생성자는 상속되지 않는다. (생성자는 객체를 만들기 위한 특별한 메서드 이므로 그대로 물려줄 수 없다.-> 자식 객체 생성시 부모 객체도 자동으로 생성되어야 하므로, 자식 생성자 안에서 super() 로 명시적 호출-> super() : 부모 클래스에 기본 생성자만 존재하면, 자식 클래스에서 생략 가능 (자동으로 호출되기 때문)-> super() : 부모 클래스에 다른 생성자만 존재하면, 자식 클래스에서 반드시 super() 로 명시적 호출-> super() :부모 클래스에 기본 생성자가 없으면, 자식 클래스에선 super() 를 쓰지 못하므로 super(값) 으로 존재하는 생성자..

안드로이드 UI 초기화 개념 요약 (EditText, TextView 등)

" 안드로이드 시스템아, 액티비티가 실행될 준비를 해줘 "" 이 액티비티에서는 이 화면 activity_main.xml 을 사용할게 "super.onCreate(savedInstanceState);// 안드로이드 앱에서 화면 초기화// onCreate : 액티비티가 처음 실행될 때 호출되는 생명주기 함수// super.onCreate(...) : 부모 클래스 AppCompatActivity 가 가지고 있는// 기본 초기화 작업을 먼저 해줘야 되기 때문에 반드시 호출 해야 함.setContentView(R.layout.activity_main);// activity_main.xml 이라는 레이아웃 파일을 화면에 보여줘// R.layout.activity_main = res/layout 폴더에 있는 actv..

get, set

get 함수- 값을 가져오는 함수 (읽기)- 출력, 비교, 조건 검사할 때 자주 쓰인다.- getName()은 name 값을 외부에서 사용할 수 있도록 돌려준다. return -> 값을 반환해야 하므로 자료형 꼭 써야 함. set 함수- 값을 넣어주는 함수 (쓰기)- 메인함수에서 객체 안에 값을 넣는 역할- 초기값을 설정하거나 수정할 때만 쓴다.- segAge(10) -> 객체 안 age 값이 10으로 바뀐다.

static

클래스 자체에 속하게 만들기 위해서 사용한다.객체(인스턴스)를 만들지 않고도 바로 사용할 수 있게보통 단순 계산, 도우미 함수 등에서 자주 쓰인다. static 사용한 경우 -> 객체 생성 불필요public class Test{public static void main(String[] args) {run();}public static void run() {System.out.println("안녕");}} static 사용하지 않은 경우 -> 객체 생성 필요public class Test{public static void main(String[] args) {Test t = new Test();run();}public void run() {System.out.println("안녕");}}

헷갈

기본 생성자 : 매개변수가 없는 생성자* 자바에서는 생성자를 아예 안만들면 컴파일러가 자동으로 기본 생성자를 생성* 다른 생성자(매개변수 있는 생성자)를 만들면 기본생성자는 자동으로 만들어지지 않는다. 함수 : 값을 계산하거나 동작을 수행 / int sum (int a, b)생성자 : 객체 생성시 호출되는 특수한 메서드 / Person ()메서드 : 클래스 안에 정의된 함수 / void run()-> 자바에서는 모든 함수가 클래스 안에 들어가므로 함수 = 메서드 라고 보면 된다.-> 생성자도 메서드의 일종이지만, 이름이 클래스와 같고 변환 타입이 없고 객체 생성시 자동으로 호출된다는 점이 다르다.

void

void이 함수는 값을 돌려주지 않는다, 계산과 상관없이 main 함수에 값을 넘겨주지 않는다.기계가 안에 붕어빵을 구워서 그냥 현장에서 맛보게 하는 느낌 (출력만)아무것도 return 하지 않고 출력만 하는 경우는 함수 앞에 자료형 안써도 됨. 값을 돌려주지 않고 출력만 할 경우 -> voidstatic void fee(int a, int b)System.out.println("입장료 : " + (a * 20000 + b * 9900));} 값을 돌려줄 경우 -> (int형) 결과static int fee(int a, int b) {return a * 20000 + b * 9900;}