일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
- 제태크
- 오버라이딩
- javascript
- 프로그래머스
- XLF
- 주린이
- mco
- 그리디 알고리즘
- 인플레이션
- 접근제어자
- 잉여현금흐름
- 객체지향
- S&P500
- 미국주식
- 백준
- 배당성장
- 무디스
- etf
- Java
- 기업분석
- 다형성
- 알고리즘
- 현금흐름표
- 금리인하
- 자바
- 금리인상
- object
- 주식
- FCF
- StringBuffer
- Today
- Total
목록Java (57)
오늘의하루
만들면서 새로 알게된 점은 int 배열을 List로 변환할때 List list = new ArrayList(Arrays.toList(int 배열))이 안된다는 것이다. 그래서 코드를 작성할때 for문을 통해 하나씩 list에 추가해주었다. import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.*; public class Main { public static void main(String[] args) { System.out.println("Number BaseBall Game!"); System.out.print("START(AnyKey) or QUIT(Q) = "); try{ BufferedReader br =..
BufferedReader의 경우 키보드의 입력이 있을 때마다 한 문자씩 버퍼(buffer)로 전송하며 버퍼가 가득차거나 개행 문자가 나타나면 버퍼의 내용을 한 번에 전송하기 때문에 속도가 scanner에 비해 빠르다. import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.List; import java.util.ListIterator; public class Main { public static void main(String[] args) { System.out.println("PassWord Making"); System.out.print("id = "); t..
지금까지 배운 내용으로 만들어본 성적 조회 프로그램 필요한 기능 성적 입력 학번, 이름, 영어 점수, 수학 점수를 입력받는다. 성적 조회 개인의 성적을 조회한다. 학번, 이름, 영어 성적, 수학 성적, 평균 점수, 전교 등수를 출력한다. 전교생의 성적을 조회한다. 전교 등수대로 출력된다. 전교 등수, 이름, 학번, 영어 점수, 수학 점수, 평균 점수를 출력한다. 과목별 통계 과목명, 최고 점수, 최저 점수, 평균 점수를 출력한다. 프로그램을 종료 소스코드 import java.util.*; public class Main { public static void main(String[] args) { Scanner s = new Scanner(System.in); Map map = new HashMap();..
Object Class Object class는 모든 클래스의 최고 조상이며 오직 11개의 메서드만을 가지고 있다. equals(Object obj), hashCode(), toString()은 상황에 맞게 적절히 오버 라이딩해야 한다. Object class에 있는 11개의 메서드에 대해 알아보기 protected Object clone() 객체 자신의 복사본을 반환한다. public boolean equals(Object obj) 객체 자신과 객체 obj가 같은 객체인지 알려준다. protected void finalize() 객체가 소멸될 때 가비지 컬렉터에 의해 자동적으로 호출 이때 수행되어야 하는 코드가 있는 경우에만 오버 라이딩한다. public Class getClass() 객체 자신의 클래..
추상 클래스(Abstract class) 클래스를 설계도라고 하면 추상 클래스는 미완성된 설계도를 말하며 다른 클래스의 작성을 돕기 위하 목적으로 사용됩니다. 추상 클래스는 추상 메서드를 포함하고 있는 클래스를 말합니다. 일반 메서드는 추상 메서드를 호출할 수 있습니다. 추상 클래스는 인스턴스를 생성할 수 없습니다. abstract class Player{ // 추상 클래스 int currentPos; Player(){ currentPos = 0; } abstract void play(int pos); // 추상 메서드 abstract void stop(); // 추상 메서드 void play(){ // 오버로딩 play(currentPos); // 추상 메서드 호출 } } 추상 메서드(Abstract ..
제어자(modifiers) 제어자는 클래스, 변수, 메서드의 선언부에 사용되어 부가적인 의미를 부여하며 크게 접근 제어자와 그 외의 제어자로 나눠집니다. 하나의 대상에 여러 개의 제어자를 조합해서 사용할 수 있지만 접근제어자는 단 하나만 사용할 수 있다. 접근 제어자 : public, protected, default, private 그 외 제어자 : static, final, abstract, native, transient, synchronized, volatile, strictfp 그 외의 제어자 알아보기 static - 클래스의, 공통적인 static이 사용될 수 있는 곳은 멤버 변수, 메서드, 초기화 블록이다. 대상 의미 멤버변수 1. 모든 인스턴스에 공통적으로 사용되는 클래스 변수가 된다. 2..
상속 (Inheritance) 기존의 클래스를 재사용해서 새로운 클래스를 작성하는 것을 말하며 이렇게 작성된 클래스와 기존 클래스는 서로 부모와 자식으로 관계를 맺어지게 됩니다. 자식은 부모의 모든 멤버를 상속받습니다. (단, 생성자 및 초기화 블록은 제외됩니다.) 자식의 멤버개수는 부모보다 적을 수 없습니다. 단일 상속을 원칙으로 한다. class Point{ int x; int y; } class Point3D extends Point{ int z; } Point3D p = new Point3D(); p.x = 1; // OK p.y = 2; // OK p.z = 3; // OK 상속 관계 공통 부분은 부모에서 관리하고 개별 부분은 자식에서 관리하게 만들며 부모의 변경은 자식에게 영향을 미치지만 자식..
생성자 생성자는 인스턴스가 생성될 때마다 호출되는 "인스턴스 초기화 메서드"이며 모든 클래스에는 반드시 하나 이상의 생성자가 있어야 한다. Card c = new Card(); 1. 연산자 new에 의해 메모리(heap)에 Card클래스의 인스턴스가 생성된다. 2. 생성자 Card()가 호출되어 수행된다. 3. 연산자 new의 결과로 생성된 Card인스턴스의 주소가 반환되어 참조 변수 c에 저장된다. 생성자의 조건 생성자의 이름은 클래스의 이름과 동일해야 하며 리턴 값이 없지만 void를 쓰지 않는다. class Test{ ... Test() // 매개변수 없는 기본 생성자 { // 인스턴스 초기화 작업 } Test(String kind, int number) // 매개변수 있는 생성자 { // 인스턴스..
변수와 메소드 변수는 선언위치에 따라 종류와 범위(Scope)가 달라진다. class Variables{ // Class Area Start int iv; // 인스턴스 변수 static int cv; // 클래스 변수 void method(){ // Method Area Start int lv = 0; // 지역 변수 } // Method Area End } // Class Area End 변수의 종류 변수의 종류 선언 위치 생성 시기 클래스 변수 클래스 영역 클래스가 메모리에 올라갈때 인스턴스 변수 인스턴스가 생성될때 지역 변수 메소드 영역 메소드가 호출되었을때 변수의 특징 클래스 변수 같은 클래스의 모든 인스턴스들이 공유하는 변수이다. 인스턴스 생성없이 " 클래스명.클래스변수명 "으로 접근이 가능하..
객체지향 언어 란? 코드의 재사용성을 높여준다. 코드의 관리가 쉬워진다. 신뢰성이 높은 프로그램의 개발을 가능하게 한다. 클래스와 객체 클래스는 객체를 정의해 놓은 것을 말한다. 객체는 속성과 기능을 가진 개념을 말한다. - 객체(Object)는 인스턴스(instance)를 포함하는 일반적인 의미이다. 예를 들어 붕어빵 기계는 클래스이고 붕어빵은 객체가 된다. 객체의 구성요소 객체는 속성(변수)과 기능(메서드)으로 이루어져 있으며 속성과 기능을 합쳐서 멤버라고 한다. class Tv{ // 속성(변수) String color; boolean power; int channel; // 기능(메서드) void power(){power = !power;} void channelUp(){channel++;} vo..