Java

Java

Java - Arrays의 메서드

🌱 오늘의 주제 : Arrays의 메서드 🌱 Arrays의 메서드 - 복사 Arrays.copyOf() - 배열 전체를 복사 Arrays.copyOfRange() - 배열의 일부를 복사 , 범위의 끝은 포함되지 않는다. int[] arr2 = Arrays.copyOf(arr, arr.length); 🌱 Arrays의 메서드 - 채우기, 정렬, 검색 Arrays.fill() - 배열의 모든 요소를 지정된 값으로 채운다. Arrays.setAll() - 배열을 채우는데 사용할 함수형 인터페이스를 매개변수로 받는다. 함수형 인터페이스를 구현한 객체를 매개변수로 지정하던가 아니면 람다식을 지정해야 한다. Arrays.sort() - 배열을 정렬 Arrays.binarySearch() - 배열에서 지정된 값이 저..

Java

Java - LinkedList

🌱 오늘의 주제 : LinkedList 🌱 LinkedList 불연속적으로 존재하는 데이터를 서로 연결한 형태로 구성. 🌱 LinkedList의 삭제 데이터 삭제는 간단하다. 삭제하고자 하는 이전요소가 삭제하고자 하는 다음 요소를 참조하도록 변경하면 된다. 처리속도가 빠르다. 🌱 LinkedList의 추가 추가하고자 하는 위치의 이전 요소의 참조를 새로운 요소에 대한 참조로 변경해주고, 새로운 요소가 다음 요소를 참조하도록 변경. 처리속도가 빠르다. 🌱 ArrayList와 LinkedList의 비교 컬렉션 읽기(접근시간) 추가/삭제 비고 ArrayList 빠르다 느리다 순차적인 추가삭제는 더 빠름 비효율적인 메모리사용 LinkedList 느리다 빠르다 데이터가 많은수록 접근성이 떨어짐

Java

Java - ArrayList

🌱 오늘의 주제 : ArrayList 🌱 ArrayList 메서드 🌱 ArrayList 가장 많이 사용되는 컬렉션 클래스 데이터의 저장순서가 유지 중복을 허용 배열에 순서대로 저장 배열에 더 이상 저장할 공간이 없으면 보다 큰 새로운 배열을 생성해서 기존의 배열에 저장된 내용을 복사 후 저장. package chapter11_p; import java.util.ArrayList; import java.util.Collections; public class ex11_1p { public static void main(String[] args) { ArrayList list1 = new ArrayList(10); list1.add(new Integer(5)); list1.add(new Integer(4));..

Java

Java - 컬렉션 프레임웍의 핵심 인터페이스

🌱 오늘의 주제 : 컬렉션 프레임웍의 핵심 인터페이스 🌱 컬렉션 프레임웍의 핵심 인터페이스 인터페이스 특징 List 순서가 있는 데이터의 집합. 데이터의 중복을 허용한다. 예) 대기자 명단 구현클래스: ArrayList, LinkedList, Stack, Vecotr 등 Set 순서를 유지하지 않는 데이터의 집합, 데이터의 중복을 허용하지 않는다. 예) 양의 정수집합, 소수의 집합 구현클래스: HashSet, TreeSet 등 Map 키(key)와 값(value)의 쌍(pair)으로 이루어진 데이터의 집합 순서는 유지되지 않으며, 키는 중복을 허용하지 않고, 값은 중복을 허용한다. 예) 우편번호, 지역번호(전화번호) 구현클래스 : HashMap, TreeMap, Hashtable, Properties 등

Java

Java - 인터페이스(interface)

🌱 오늘의 주제 : 인터페이스(interface) 🌱 인터페이스(interface) 인터페이스는 일종의 추상클래스이다. 추상메서드와 상수만을 멤버로 가질 수 있다. 일반 메서드, 멤버변수는 가질 수 없다. 인터페이스는 구현{ } 된 것은 아무것도 없고, 밑그림만 그려져 있는 '기본 설계도'이다. 다른 클래스를 작성하는데 도움을 줄 목적으로 작성된다. 접근제어자는 public, default만 사용할 수 있다. interface 인터페이스이름 { public static final 타입 상수이름 = 값; public abstract 메서드이름(매개변수 목록); } - 모든 멤버변수는 public static final 이어야 하며, 이를 생략할 수 있다. - 모든 메서드는 public abstract 이어..

Java

Java - 추상 클래스(abstract class), 추상메서드(abstract method)

🌱 오늘의 주제 : 추상 클래스(abstract class) 🌱 추상 클래스(abstract class) 공통 부분만을 그린 미완성 설계도, 인스턴스 생성불가. 미완성 메서드(추상 메서드)를 포함하고 있는 클래스 상속을 통해서 자손클래스에 의해서만 완성될 수 있다. 추상 클래스는 추상 메서드를 포함하고 있다는 것만 제외하고, 일반 클래스와 전혀 다르지 않다. (생성자, 멤버변수, 메서드 가능) 실생활에서 예를 들어, 같은 크기의 TV라도 기능의 차이에 따라 여러 종류의 모델이 있지만, 설계도는 아마 90% 이상 동일할 것이다. 미완성 설계도를 만들어 놓고, 각각 이 설계도를 이용해 제품을 완성하는 것이 효율적일 것이다. 이때, 설계도가 추상 클래스 역할이다. abstract class 클래스 이름 { }..

Java

Java - 참조변수의 형변환

🌱 오늘의 주제 : 참조변수의 형변환 🌱 참조변수의 형변환 상속관계에 있는 클래스 사이에서, 자손타입의 참조변수를 조상타입의 참조변수로, 조상타입의 참조변수를 자손타입의 참조변수로의 형변환이 가능하다. 참조변수의 형변환은 리모컨(참조변수)을 다른 종류의 것으로 바꾸는 것 뿐이다. 바꾸는 이유는 사용할 수 있는 멤버 개수를 조절하기 위한 것. FireEngine f = new FireEngine(); Car c = (Car)f; // 조상인 Car타입으로 형변환 (생략 가능), f의 값(객체의 주소)을 c에 저장. FireEngine f2 = (FireEngine)c; // 자손인 FireEngine타입으로 형변환 (생략 불가) Ambulance a = (Ambulance)f; // 에러. 상속관계가 아닌..

Java

Java - 다형성(polymorphism)

🌱 오늘의 주제 : 다형성(polymorphism) 🌱 다형성(polymorphism) 다형성 : 여러 가지 형태를 가질 수 있는 능력. 즉, 한 타입의 참조변수로 여러 타입의 객체를 참조할 수 있도록 하는 것. 클래스가 서로 상속관계에 있을 경우, 조상클래스 타입의 참조변수로 자손클래스의 인스턴스를 참조할 수 있도록 한 것. 조상타입의 참조변수로 자손타입의 객체를 참조 할 수 있다. 반대로 자손타입의 참조변수로 조상타입의 객체를 참조할 수는 없다. Tv t = new SmartTv( ); // 타입 불일치. 조상 타입의 참조변수로 자손 객체를 참조. (TV - 조상, SmartTv - 자손) SmartTv s = new Tv( ); // 에러. 자손 타입의 참조변수로 조상 객체를 잠조했기 때문. 🌱 매..

Java

Java - super( ), super, 오버라이딩

🌱 오늘의 주제 : super( ), super 🌱 super( ) - 조상의 생성자 Object클래스를 제외한 모든 클래스의 생성자 첫 줄에 생성자, this() 또는 super()를 호출해야 한다. 그렇지 않으면 컴파일러가 자동적으로 super()를 생성자의 첫 줄에 삽입한다. 생성자의 첫 줄에 반드시 다른 생성자를 호출해야한다. 생성자는 상속되지 않는다. package inheritance; public class Ex7_4 { public static void main(String[] args) { // super() - 조상의 생성자 Point3D p = new Point3D(1,2,3); System.out.println("x= " + p.x + ",y = " + p.y + ",z = " + ..

Java

Java - 클래스 간의 관계 - 포함관계

🌱 오늘의 주제 : 클래스 간의 관계 - 포함관계 🌱 클래스를 재사용하는 방법 1. 클래스간에 포함(composite)관계 2.상속 🌱 클래스 간의 관계 - 포함관계 클래스 간에 포함 관계. (거의 대부분 이 방법을 사용) public static void main(String[] args) { Circle c = new Circle( ); c.c.x = 0; c.c.y = 0; c.r = 0; class Circle { point c = new Point( ); int r; } class Point { int x; int y; } 🌱 상속관계 (많이 사용안함, 단 꼭 필요할 때는 사용) class Circle extends Point { int r; }

요가하는 개발자
'Java' 카테고리의 글 목록 (7 Page)