목록전체 글 (174)
The Debugging Chronicles : "코드의 미학"
01. 연선자의 종류1. 연산데이터를 처리하고 결과를 산출하는 작업 항 operand연산에 사용되는 값 연산자 operator기호 연산식 experssion항과 연산자를 이용해 연산 과정을 나열한것 2. 기본 연산자의 종류연산자의 분류종류연산자기능단항(피연산자 개수가 1개인 연산자)부호+,-,*,/,%사칙연산, 나머지 계산증감++,--음수 양수 부호논리|논리 부정이항(피연산자 개수가 2개인 연산자)논리&,|,&&,||논리곱, 논리합문자열+문자열 연결대입=,+=,=+,*=,/=,%=우변의 값을 좌변에 대입비교==,!=,>,=,값을 비교삼항(피연산자 개수가 3개인 연산자)조건식조건식?A : B조건식 결과에 따라 A,B선택 02. 연산자 우선순위와 연산 방향연산자 우선순위 정리- 단항, 이항, 삼항 연산자 순..
01 데이터컴퓨터 프로그램은 데이터(data)와 명령어(instruction)의 결합으로 구성된다.데이터는 실제적인 값(value)을 의미하는 데 숫자, 문자와 같은 단순 데이터부터 사진, 영상 등의 복합데이터까지 있다.데이터는 정확하고 언제든지 수정할 수 있어야하며, 사용 목적에 따라 다른 형태로 가공할 수 있어야 한다.이러한 데이터는 컴퓨터의 메모리에 저장된다. 1. 출력문 System.out.print() :괄호 안의 내용을 출력합니다. -> 문자열로 인식 System.out.pritnln() : 괄호 안의 내용을 출력하고 행을 바꾼다. -> 문자열로 인식 System.out.printf() : 문자열을 서식 문자를 이용해 형식화된 내용으로 출력한다. System.out.printf() 출력문은 ..
01. 자바의 과거와 현재자바 소개1991년 제임스 고슬링을 비롯한 연구원들에 의해 개발된 객체 지향 프로그래밍 언어 입니다. 자바의 역사 오크(Oak)라는 프로그래밍 언어에서 부터 시작해 C와 C++의 단점을 보완하고 독립적으로 작동하는 안정적인 프로그래밍 언어입니다. 자바의 특징1) 객체 지향 언어객체 지향언어는 하나의 기능을 객체로 만들고, 이러한 객체들을 결합해서 하나의 프로그램을 완성하는 기법대표적인 객체 지향 언어로 상속, 캡슐화, 다형성이 잘 나타남.2)단순성C/C++을 기반으로 개발되었지만, 제공하는 문법인 포인터 등 혼란을 일으키는 불필요한 기능들을 제거3)이식성가상머신(JVM)을 이용해 자바 프로그램이 여러 운영체제에서 동일한 실행 결과가 나오도록 설계4)멀티 스레드CPU 를 최대한 ..
객체 지향 언어의 특징상속성다형성캡슐화추상화추상화What is an abstraction in Java? Abstraction in Java refers to hiding the implementation details of a code and exposing only the necessary information to the user. It provides the ability to simplify complex systems by ignoring irrelevant details and reducing complexity. Java의 추상화는 코드의 구현 세부 사항을 숨기고 사용자에게 필요한 정보만 노출하는 것을 말합니다 . 관련 없는 세부 사항을 무시하고 복잡성을 줄임으로써 복잡한 시스템을 단순화하..
객체지향 언어의 특징상속성다형성캡슐화추상화캡슐화위키 백과를 살펴보면 다음과 같이 적혀있다. 소프트웨어 시스템에서 캡슐환는 데이터를 데이터에서 작동하는 메커니즘이나 메서드와 묶는 것을 말합니다.또한 객체의 구성 요소와 같은 일부 데이터에 대한 직접 액세스를 제한하는 것을 의미할 수도 있습니다.본질적으로 캡슐화는 외부 코드가 객체의 내부 작동과 관련되지 않도록 방지합니다. 객체 지향 프로그램이 언어 및 기타 관련 분야에서 캡슐화는 두가지 관련되지만 구별 되는 개념 중 하나를 의미하며 때로는 두가지 조합을 의미합니다.- 객체의 일부 구성요소에 대한 직접 액세스를 제한하기 위한 언어 메커니즘- 데이터와 해당 데이터에서 작동하는 메서드(또는 기타 기능) 의 번들링을 용이하게 하는 언어 구조 좀 더 풀어서 예제와..
//함수 추가 전체코드package poketmon;//함수 추가 전체코드import java.util.*;class Poketmon { String name; // 포켓몬 이름 String type; // 포켓몬 속성타입 int exp; // 현재 경험치 int level; // 등급 static Random rand = new Random(); //랜덤 함수 생성 Poketmon(String type, String name) { // 멤버변수 초기화 설정 this.name = name; this.type = type; this.exp = 0; this.level = Poketmon.rand.nextInt(5) + 1; } void hello() { System.out.println("나..
몇일간의 조원들과의 회의와 코드 리뷰를 통해서 다음과 같이 코드가 변경되었다. //함수 추가 전체코드import java.util.*;class Poketmon { String name; // 포켓몬 이름 String type; // 포켓몬 속성타입 int exp; // 현재 경험치 int level; // 등급 String sound; // 울음소리 String skill; // 공격기술 static Random rand = new Random(); //랜덤 함수 생성 Poketmon(String type, String name, String sound, String skill) { // 멤버변수 초기화 설정 this.name = name; this.type = type; this.exp = ..
[포켓몬스터 게임 프로그램을 작성해주세요.]class 포켓몬 String 타입 // 모든 포켓몬은 타입이 반드시 존재한다. ex) 전기, 물, ... String 이름 // 모든 포켓몬은 이름이 반드시 존재한다. ex) 피카츄, 꼬부기, ... int 레벨 // 새로 잡은 포켓몬의 레벨은 1~5 랜덤한 값을 가진다. int 경험치 // 새로 잡은 포켓몬의 경험치는 0이다. void attack() // 50%의 확률로 성공 -> 성공시 50~500 사이의 경험치 획득 -> 선택 포켓몬만. void hello() // 피카츄는 삐까삐까, 꼬부기는 꼬북꼬북 등의 울음소리를 출력한다. void levelUp() // 경험치가 100을 채울때마다 레벨은 +1class 피카츄 att..