자바 36

힙/스택 영역 표현 (1)

* 간단한 버전 Ex 1) 간단한 객체 생성 및, 변수 초기화. public class Main { int i; } public class Example { public static void main(String[] args) { Main a = new Main(); Main b = new Main(); Main c = b; int i = 10; int j = 0; int k = 0 } } Ex 2) 사각형의 둘레와 면적을 구하는 코드. public class Main { int width, height; //필드 선언 public int getArea() { //면적 구하기 메소드 return width*height; } public int getCirc() { //둘레 구하기 메소드 return 2*..

JAVA 2021.07.06

[백준 - 자바] 문자열 - 11654번 / 11720번

11654번 - 아스키코드 import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); char munja = sc.nextLine().charAt(0); int num = (int)munja; System.out.println(num); } } * charAt() : 해당 문자의 아스키코드를 반환해주는 메소드. 입력받은 문자를 아스키코드로 반환한 뒤, int(정수형)로 형변환을 하여 num변수에 대입한다. 11720번 - 숫자의 합 방법 1) charAt() 메소드 사용 import java.util.Scanner; public class Ma..

Baekjoon 2021.07.05

접근지정자 / setter, getter 메소드

접근지정자 public : 모든 클래스에서 접근 가능. 디폴트 : 같은 패키지에서만 접근 가능. private : 같은 클래스에서만 접근 가능. protected : 같은 패키지와 자식 클래스에서의 접근만 가능. 연습하기1 패키지, 클래스에 따른 접근지정자 사용법. => public, 디폴트, private 접근 지정자를 사용하여 필드와 메소드 선언. => private는 같은 클래스에서만 접근이 가능하기 때문에 위의 코드처럼 다른 클래스에서는 접근 불가능. => 디폴트는 같은 패키지 내에서만 접근이 가능하기 때문에 위의 코드처럼 다른 패키지에서는 접근 불가능. 연습하기2 A, B, C 클래스를 선언하여 각각의 클래스에 멤버 변수를 선언하고, 메인 메소드에서 멤버 변수에 접근하여 값 넣기. package..

JAVA 2021.07.05

클래스와 객체생성 및 활용

Ex 1) 사각형의 밑변 길이와 높이를 입력받아 둘레와 면적을 구하는 코드를 작성하기. - 같은 클래스에 코드 작성하기. (Main 클래스) import java.util.Scanner; public class Main { int width, height; //필드 선언 public int getArea() { //면적 구하기 메소드 return width*height; } public int getCirc() { //둘레 구하기 메소드 return 2*width*height; } public static void main(String[] args) { Scanner sc = new Scanner(System.in); //객체 생성 Main m = new Main(); //객체 생성 m.width = s..

JAVA 2021.07.05

객체 지향 언어(Object-oriented programming, OOP)/클래스와 객체

JAVA 프로그래밍은 객체지향 언어이며, 객체는 모두 고유한 특성과 행동을 가짐. 또한, 다른 객체들과 정보를 주고받는 상호작용을 하면서 존재함. 객체지향의 특성 캡슐화 (= 은닉화) 상속 다향성 캡슐화 -> 객체를 캡슐로 싸서 내부를 볼 수 없게 하는 것, 외부의 접근으로부터 객체를 보호. 클래스도 객체 모양을 선언한 틀이며, 때문에 메소드와 필드는 모두 클래스 내에 구현됨. 상속 -> 자식 클래스가 부모 클래스의 속성을 모두 가지는 관계를 말 함. 부모 클래스의 속성을 자식 클래스에게 물려줌. 부모/자식 클래스 대신 슈퍼/서브 클래스라고도 부를 수 있음. * extends 키워드를 사용하여 상속 받음 * 자바에서 상속은 자식 클래스가 부모 클래스를 선택함. 다향성 ->같은 이름의 메소드가 클래스나 객..

JAVA 2021.07.03

flag 변수

flag 변수 -> flag 변수는 원래는 '깃발'이라는 의미를 가지고 있지만, 프로그래밍에서는 조건에 따라 true혹은 false값을 넣어주는 boolean형 변수입니다. 연습문제 1 백준 2753번 윤년 import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int years = sc.nextInt(); sc.close(); if(years % 4 == 0) { if(years % 400 == 0) {System.out.println("1");} else if(years % 100 == 0){System.out.println("0");}..

JAVA 2021.07.02

break / continue / switch - case문

break문 -> 제어문을 빠져나오는 기능을 함. 주로 반복문에서 if 조건문을 사용하여 조건에 만족할 경우 반복문의 수행을 멈추고 외부로 수행이 이동함. Ex) i의 범위를 1부터 10까지 정한 후 7의 배수가 나왔을 때 반복문 종료. int sum = 0; for(int i = 1; i 반복문에서 if 조건문과 같이 사용하여 조건이 맞는 경우에 나머지 수행문은 수행하지 않음. 즉, 조건이 맞을 경우 해당하는 수행문만 수행하고, 나머지 수행문은 무시함. Ex) i의 범위를 1부터 100까지 설정하여 7의 배수만 출력. for(int num = 1; num

JAVA 2021.07.01

while /do - while 반복문

형식 -> 조건식이 참인 동안은 while문이 계속 반복됨. while( 조건식 ) { 수행문1...; } 수행문2...; * JAVA에서는 while문의 조건식에 1을 넣지 못하고, true는 가능함. * 간단한 예제 : num변수가 조건식에 만족할 때까지 반복문이 실행된 횟수 구하기. int num = 1; int count = 0; while(num 조건식이 참인지 거짓인지 상관없이 수행문(do괄호 안 수행문)이 한 번은 실행됨. do { 수행문1...; } while( 조건식 ); 수행문2...; * while문과 do - while문의 차이점 while문은 조건식이 참을 경우..

JAVA 2021.06.29