Java 74

JAVA 프로그래밍 기초 04 연산자, 수식, 문장

연산자 1. 연산자(operator) - 특정 연산을 수행하기 위한 기호- 연산을 수행한 결과를 반환- 연산의 대상이 되는 데이터: 피연산자(operand)- 피연산자 개수에 따라 단항, 이항, 삼항 연산자 존재- 이항 연산자는 두 항의 자료형을 일치시키고 연산을 수행 - 수식을 계산할 때 우선순위가 높은 연산자부터 계산- 우선순위가 같은 경우 대입연산자를 제외하고 모든 이항 연산자는 왼쪽부터 계산- 대입 연산자는 오른쪽부터 계산 2. 연산자의 종류 구분연산자산술+ - * / % 단항+ 단항- ++ --비교> >= 논리&& || ! 삼항?: & | ^비트& | ^ ~ > >>>대입= += -= *= /= %= &= ^= |= >>= >>=형변환(type)기타[] () . new 3. 연산자 우선순위..

JAVA 프로그래밍 기초 03 Java 기본 문법(2)

문자열과 형변환 1. String 클래스 1) 문자열을 표현하고 처리하기 위한 참조 자료형- 문자열은 String 클래스의 객체 2) 문자열 리터럴을 표현할 때 이중따옴표를 사용함ex1. String s1 = "Java";ex2. String s2 = new String("Java");. 3) String형의 변수는 기본형 변수처럼 사용할 수 있음 4) null 이라는 특별한 리터럴이 있음- 참조형 변수의 값(not available)이 될 수 있음ex. if (str != null) { ... } 2. 문자열의 +연산 1) 두 문자열을 연결하는 것(concatenation)- (문자열+기본형) or (문자열+다른 참조형)도 가능- 기본형과 참조형 값은 문자열로 형변환 가능 2) print()나 pr..

JAVA 프로그래밍 기초 01 Java 개요

Java 언어 1. Java 언어의 역사 - Sun Microsystems의 제임스 고슬링 박사가 창시 - 1990년 그린 프로젝트와 Oak 언어 개발 -> Java로 명칭 변경- 1995년 Java와 HotJava(Java 언어로 개발된 웹 브라우저) 발표(웹의 확산)- 1996년 1월 JDK1.0(자바 플랫폼: 자바프로그램 개발 환경) 발표- 2009년 Oracle이 Sun 인수- 2021년 Java SE 16 (JDK16) 2. Java 언어의 특징 - C/C++ 언어와 유사하나 단순함(전처리 등이 필요없음)- 플랫폼에 독립적인 언어: 플랫폼이 언어에 포함- 완전한 객체지향 언어- 웹/네트워크 프로그래밍 언어- 엄격한 자료형의 검사 -> 실행 오류를 줄인다- 예외 처리 기능 제공- 멀티 스레딩 ..

JAVA 프로그래밍 기초 00 자바 Oracle Java SE + JDK 설치 및 환경설정

Java SE 설치 Java Oracle 홈페이지 접속https://www.oracle.com/java Java SoftwareJava software reduces costs, drives innovation, and improves application services. Learn more about Java, the #1 development platform.www.oracle.com Java SE 설치파일 다운로드https://www.oracle.com/java/technologies/javase-jdk16-downloads.html Download the Latest Java LTS FreeSubscribe to Java SE and get the most comprehensive Java s..

JAVA Eclipse 30 예외처리

예외 및 에외처리 예외(Exception) : 프로그램 실행 중 발생하는 오류 중에서 처리가 가능한 것 예외처리(Exception Handling) : 예외가 발생했을 때 이를 적절히 처리하여 프로그램이 비정상적으로 종료되는 것을 막는 방법 객체로서의 예외 : 자바는 객체지향 언어이기에 예외도 객체로 처리 모든 예외 클래스들은 Exception 클래스를 상속받으므로 Exception으로 처리 가능 예외 클래스들에서 Exception 클래스의 메서드 사용 가능 한번에 모든 예외를 처리하는 방법 try { 예외가 발생할 수 있는 명령; } catch(Exception e){ 예외 발생 시 처리할 명령; } throw : 예외 발생 프로그래머가 고의로 예외를 발생시킬 때 사용하는 방법 구조 Exception ..

JAVA Eclipse 29 예외처리 - 예외/예외처리 개념

예외(Exception) : 프로그램 실행 중 발생하는 오류 중에서 처리가 가능한 것 에러 : 개발자가 조치를 취할 수 없는 수준 ex. 메모리 부족, JVM 동작 이상 컴파일 에러 : 컴파일 시 발생하는 에러 ex. 오타, 잘못된 자료형 등 런타임 에러 : 프로그램 실행 도중에 발생하는 에러 ex. 정수값 대신 문자열 입력 등 로직 에러 : 실행은 되지만 의도와는 다르게 동작하는 에러 예외 : 다른 방식으로 처리 가능한 오류 ex. 입력값 오류, 네트워크 문제 예외처리(Exception Handling) : 예외가 발생했을 때 이를 적절히 처리하여 프로그램이 비정상적으로 종료되는 것을 막는 방법 ex. 입력 오류: 숫자를 입력해야 하는 곳에 문자를 입력할 경우를 방지하기 위해 사용자에게 문지 입력 시 ..

JAVA Eclipse 26 추상메서드와 추상클래스

추상메서드 : 선언부만 정의하고 구체적인 내용은 비워 놓은 메서드 추상메서드가 있는 클래스를 상속받는 자식클래스는 반드시 부모클래스의 추상메서드를 구현해야 한다 abstract 리턴타입 메서드명(); 구현하지 않으므로 {} 생략하고 ; 으로 마무리 추상클래스 : 추상메서드를 멤버(필드)로 갖는 클래스 추상 클래스는 일반 메서드 필드에 존재 가능(단, 추상 메서드를 하나라도 포함해야 한다) 객체를 생성할 수 없다 abstract class 클래스명 { ... abstract 리턴타입 메서드명(); } 구현하지 않으므로 {} 생략하고 ; 으로 마무리 추상 클래스 사용 목적 자식 클래스가 구현하도록 메서드의 기능을 비워놓고 싶을 때 사용 ex. 도형 class - draw(); 사각형 class - draw(..

JAVA Eclipse 25 상속과 다형성 - 다형성 개념과 다형성 관련 실습

다형성 : 한 가지의 타입이 여러 가지 형태의 인스턴스를 가질 수 있는 것 다형성의 여러 가지 방법 부모 자식 간의 형 변환(casting) upcasting downcasting public : 누구나 접근할 수 잇는 private : 자식이 상속받을 수 없는 필드 default : 같은 패키지 내에서만 protected : 다른패키에서는 자식만 접근할 수 있다 upcasting : 자식 클래스의 객체가 부모 클래스의 참조변수로 형 변환 되는 것 부모클래스 변수 = 자식 객체값; 형변환은 생략 가능해 명시적인 형 변환아 아니어도 가능 ex1. public class upcasting { public static void main(String[] args) { Student st1 = new Studen..

JAVA Eclipse 24 상속과 다형성 - 상속/메서드 오버라이딩

상속 : 부모클래스의 기능을 자식클래스가 물려받는 것 부모클래스에서 작성한 기능을 재사용하기 위해 class 클래스명 extends 부모클래스명 { ... } ex. public class inheritance { public static void main(String[] args) { Student st = new Student(); st.breath(); st.learn(); Teacher t = new Teacher(); t.eat(); t.teach(); } } class Person { void breath() { System.out.println("숨쉬기"); } void eat() { System.out.println("밥먹기"); } void say () { System.out.printl..

JAVA Eclipse 23 클래스 생성자

생성자 : 객체 생성 시 호출되어, 변수들을 초기화화는 메서드 클래스와 이름이 같음 리턴 타입, 반환값이 없음 구현부 클래스명 ( ) { } 호출부 클래스명 ( ); ex1. 구현부 Aclass (){ x=100; } 호출부 new Aclass(): ex2. public class Constructor { public static void main(String[] args) { Cellphone phone = new Cellphone(); } } class Cellphone { String model="Galaxy S23 Ultra"; String color="Baby Pink"; int capacity=512; Cellphone () { System.out.println("model: " + model..