2023/10/17 8

JAVA Collections(List,Map)

대표사진 삭제 사진 설명을 입력하세요. 결과값이랑 비교하면서 봐야 이해가된다.. //Collections //배열과 같이 자료(데이터)를 효율적으로 관리하기 위한 방법 import java.util.ArrayList; import java.util.HashMap; public class MainClass { public static void main(String[] args) { //List는 인터페이스로 이를 구현한 클래스는 인덱스를 이용해서 데이터를 관리한다. //인덱스를 이용한다. 데이터 중복이 가능하다. // ArrayList 객체 생성 ArrayList list = new ArrayList(); System.out.println("list.size : " + list.size()); //데이터 ..

Develop/JAVA 2023.10.17

JAVA 문자열클래스(String,StringBuffer, StringBuilder)

//문자열클래스 //String 객체와 메모리 //문자열을 다루는 String클래스(객체)는 데이터가 변하면 메모리상의 변화가 많아 속도가 느리다. //기존에 있던 String str="java" 가 메모리에 있음. //여기에 str = str+"_8"을 추가할떄 기존의 객체를 버리고 새로운 메모리에 생성 -> 기존의 객체는 GC가 지운다. //GC가 삭제하기전엔 기존의 객체도 메모리에 남아있음. //String의 단점을 보완한 StringBuffer, StringBuilder 가 있음. //데이터가 변경되면 메모리에서 기존객체를 재활용 //속도는 StringBuilder좀더 빠르며 StringBuffer가 데이터 안정성이 조금더 좋음 public class Mainclass { public static..

Develop/JAVA 2023.10.17

JAVA 람다식

//람다식 //객체지향이 아닌 함수지향으로 생성하는 변수 //익명 함수(anonymous function)을 이용해서 객체를 생성하기 위한 식이다. //기존방법 : interface 구현 --> interfaceType 변수 //람다식 방법 : interface 구현 --> Lambda Expressions (람다 익스프레션)-->interfaceType 변수 public class MainClass { public static void main(String[] args) { // 매개 변수와 실행문만으로 작성.(접근자, 반환형, return키워드 생략) Lambdainterface1 li1 = (String s1, String s2, String s3) -> { System.out.println(s1 ..

Develop/JAVA 2023.10.17

JAVA 추상클래스

//추상클래스 //클래스의 공통된 부분을 뽑아서 별도의 클래스(추상클래스)로 만들어 놓고, 이것을 상속해서 사용한다. //abstract 클래스의 특징 /*멤버변수를 가진다. * abstract 클래스를 상속하기 위해서는 extends를 이용한다. * abstract 메서드를 가지며, 상속한 클래스에서 반듯이 구현해야 한다. * 일반 메서드도 가질 수 있다. * 일반 클래스와 마찬가지로 생성자도 있다. * 인터페이스와 어느정도 비슷한 기능을 가진다. * */ //MainClass.java public class MainClass { public static void main(String[] args) { AbstractClassEx ex = new ClassEx(10, "java"); ex.fun1();..

Develop/JAVA 2023.10.17

JAVA 인터페이스

//인터페이스 //클래스와달리 객체를 생설항 수는 없으며 클래스에서 구현해야하는 작업명세서이다. //인터페이스를 사용하는 이유는 ㄴ많지만 주된이유는 바로 객체가 다양한 자료형(타입)을 가질 수 있기 때문이다. //MainClass.java public class MainClass { public static void main(String [] args) { InterfaceA ia = new InterfaceClass(); InterfaceB ib = new InterfaceClass(); ia.funA(); ib.funB(); System.out.println(); // Toy 인터페이스 예제 Toy robot = new ToyRobot(); Toy airplane = new ToyAirplane();..

Develop/JAVA 2023.10.17

JAVA 내부(inner) 클래스와 익명(anonymous) 클래스

//내부 클래스와 익명 클래스 //내부(inner)클래스는 클래스 안에 또 다른 클레스를 선언하는 것 //두클래스의 멤버에 쉽게 접근할 수 있다. //코드가 장황해지는 단점이 있기때문에 별로사용되지않음 //익명(anonymous) 클래스는 이름이 없는 글래스로 주로 메서드를 재정의 하는 목적으로 사용 //간간히 쓰인다. //MainClass.java public class MainClass { public static void main(String[] args) { OuterClass oc = new OuterClass(); System.out.println("oc.num : " + oc.num); System.out.println("oc.str1 : " + oc.str1); System.out.prin..

Develop/JAVA 2023.10.17

JAVA 상속 특징

//상속 특징 //매서드 오버라이드 - 부모(상위)클래스의 기능을 자식(하위) 클래스에서 재정의해서 사용한다. //기본 자료형 처럼 클래스도 자료형 이다. //모든 클래스의 최상위 클래스는 Object 클래스이다.*** //상위 클래스를 호출할 때 super키워드를 이용한다. //MainClass.java public class MainClass { public static void main(String[] args) { //클래스의이름은 데이터 타입으로 인식이된다. //childClass의 타입은 ChildClass System.out.println("ChildClass makejjajang()출력"); ChildClass childClass = new ChildClass(); childClass.ma..

Develop/JAVA 2023.10.17

JAVA 상속

//상속 //부모클레스를 상속받은 자식(하위) 클레스는 부모(상위) 클래스의 속성과 기능도 이용할 수 있다. //할아버지(집)---(상속)--->아버지(집+자동차)---(상속)--->아들(집+자동차+요트) //parent class(속성,기능)---(상속)---> child class(속성+기능) //child class(속성+기능)를 이용한 객체 생성 --> 객체기능=(parent class 기능+child class 기능) //기존의 검증된 class를 이용해서 빠르고 쉽게 새로운 class를 만들 수 있다. //MainClass.java public class MainClass { public static void main(String[] args) { ChildClass childClass = n..

Develop/JAVA 2023.10.17
반응형