일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 오라클
- Event
- spring
- 연산자
- 파일 입출력
- css
- GUI
- File 클래스
- function
- jQuery
- html
- 다형성
- String
- 설치
- kotlin #return #jump
- list
- array
- Java
- javaservlet
- property
- 연락처 프로그램
- 윈도우 #단축키
- jsp
- Method
- 상속
- springframework
- JavaScript
- 자바
- 코틀린#클래스#상속
- 데이터베이스
- Today
- Total
목록개발자의 길/JAVA (42)
Binary World
* 여러가지 변수, 메소드 등을 받아서 저장할 수 있는 클래스* 두 개 이상의 일반화 변수를 갖는 generic 클래스 * GenericMain02.java package edu.java.generic02; class Test{private T item1;private U item2;public Test(T item1, U item2){this.item1 = item1;this.item2 = item2;}public void display() {System.out.println("아이템1 : " + item1);System.out.println("아이템2 : " + item2);}} // end class Test public class GenericMain02 { public static void ma..
* BigInteger: 저장할 수 있는 정수값의 한계가 없는 클래스* BigDecimal: 실수 계산의 오차를 줄이거나 없애기 위해서 만들어진 클래스 - auto boxing과 auto unboxing 기능을 제공하지 않음 - 생성자를 호출해서 인스턴스를 생성해야함 - 산술연산은 반드시 메소드를 사용해야 함 * BigMain.java package edu.java.wrapper04; import java.math.BigDecimal;import java.math.BigInteger; public class BigMain { public static void main(String[] args) {// long n = 12345678912345678912L;// long 타입도 저장할 수 있는 한계가 존재..
* Wrapper: 자바의 기본 데이터 타입을 감싸는 클래스 기본 자료형: boolean, byte, short, int, long, char, float, double* Wrapper 클래스 종류: Boolean, Byte, Short, Integer, Long, Char, Float, Double* wrapper 클래스를 사용하는 이유: 1. 클래스의 메소드(기능), 상수(public static final)를 사용하기 위해서 2. 메소드 매개변수로 Object를 갖는 메소드의 매개변수로 사용하기 위해서 3. 컬렉션 프레임워크에서 사용하기 위해서 * WrapperMain01 package edu.java.wrapper01; // Wrapper: 자바의 기본 데이터 타입을 감싸는 클래스// 기본 자료형..
* 시스템의 시간 정보를 통해 날짜, 시간 등을 출력할수 있게 해주는 클래스 * java.util 패키지에 포함 * DateMain01.java (Date 클래스의 기본 생성자, 형태) package edu.java.date01; import java.util.Date; public class DateMain01 { public static void main(String[] args) {// 시스템의 현재 시간 정보Date date = new Date(); //java.utilSystem.out.println(date);System.out.println(date.getTime());System.out.println();// 1970년 1월 1일 0시 0분 0초를 기준(0)으로 삼아서// milli-sec..
* 문자열을 출력해주는 클래스* String 클래스 : - immutable 클래스(내용이 바뀌지 않는 클래스)* StringBuffer 클래스 - mutable 클래스(내용을 바꿀 수 있는 클래스) - Java 1.0 버전부터 사용하던 클래스 - 반드시 생성자를 사용해서 초기화해야함 - 문자열 리터럴(ex. "abc")로 초기화 불가능 - 속도가 느림 - Thread-safe: 쓰레드에 안전한 클래스* StringBuilder - Java 5 버전부터 사용하게 된 클래스 - 반드시 생성자를 사용해서 초기화 - 문자열 리터럴(ex. "abc")로 초기화 불가능 - 속도가 빠름 - Thread-safe: 쓰레드에 안전하지 않은 클래스* 그 외에 모든 기능이 동일함(동일한 기능의 메소드들을 가지고 있음) *..
* 여러 명이서 코드를 작성할 때 서로 간의 규약만 정의하여 작성된 코드를 컴파일 할 수 있게 다리 역할을 해주는 역할을 인터페이스가 해준다.* 클래스와 상속의 차이- 상속은 다중 상속이 불가능하지만, 구현(인터페이스)는 다중 구현이 가능하다.- 상속 : IS-A 관계가 성립할 때 스마트TV는 TV다. (SmartTV is a TV.) (o) class SmartTv Extends BasicTV {...}- 구현(인터페이스): HAS-A 관계가 성립할 때 TV는 리모콘을 가지고 있다. (TV has a remote control.) class BasicTV implements RemoteControl { ... } * Java 8 이전 버전의 인터페이스 인터페이스(interface) : 1. 모든 메소드..
1. final 선언- final: 최종적인, 변경할 수 없는- final + 멤버 변수, 지역 변수: 상수(한번 초기화된 값을 변경할 수 없는 변수)- final + 메소드: override할 수 없는 메소드- final + 클래스: 상속을 허용하지 않는 클래스 2. abstract 선언- abstract: 추상적인, 실체가 없는- abstract 메소드(추상 메소드): 메소드의 원형(prototype: 리턴 타입, 이름, 매개변수)만 선언하고, 메소드의 본체(body)를 구현하지 않은 메소드 {...} 이 없음 추상 메소드는 반드시 ;으로 끝남 abstract 리턴타입 메소드이름(매개변수, ...); 형식으로 선언- abstract 클래스(추상 클래스): 추상 메소드를 하나라도 가지고 있는 클래스 a..
- 인스턴스를 여러가지 타입으로 부를 수 있는것- 생성된 인스턴스를 가리키는(참조하는) 참조 변수를 선언할 때, - 생성된 인스턴스의 클래스 타입으로 변수를 선언할 수도 있고- 그 부모타입으로 변수를 선언할 수도 있는 것 1. 배열을 사용할 때 부모 타입으로만 선언해도, 그 배열에는 부모/자식 타입 모두 저장 가능2. 메소드를 정의할 때, 메소드의 매개변수나 리턴 타입으로 부모 클래스 타입만 사용해도 부모/자식 타입 모두 매개변수나 리턴값으로 사용할 수 있다. 1. 다형성을 이용해서 배열을 생성하고 출력 * Car.java(자동차 클래스, 부모 클래스) package edu.java.inherit06; public class Car {// 멤버 변수private int fuel; // 연료// 생성자pu..