자바 입문 기초 알고리즘 구조 7

자바 제너릭(4/5) 생활코딩

제너릭은 생략이가능하다 EmployeeInfo e = new EmployeeInfo(1); Integer i = new Integer(10); Person p1 = new Person(e, i); 생성자의 매개변수 e와 i는 각각 EmployeeInfo ,Integer라는 것을 알수있다 Person p1 = new Person(e, i); >> 그래서 이와같이 생략이 가능하다 Person p1 = new Person(e, i); package org.opentutorials.javatutorials.generic; class EmployeeInfo{ public int rank; EmployeeInfo(int rank){ this.rank = rank; } } class Person{ //클래스안에서 쓰..

자바 제네릭 2 (생활코딩)

package org.opentutorials.javatutorials.generic; class EmployeeInfo{ public int rank; EmployeeInfo(int rank){ this.rank = rank; } } class Person{ public T info; public S id; //새로운 필드를 추가 이 필드역시도 어떠한 데이터 타입을 확정시키고 싶지않을때 쓰는 와일드 카드 Person(T info, S id){ this.info = info; this.id = id; } } public class GenericDemo { public static void main(String[] args) { Person p1 = new Person(new EmployeeInfo(1),..

인스턴스화 시키는 법

클래스 이름 인스턴스 = new 클래스이름(); ex) class person( } public static void main(String[] args) person p = new person(); >> 클래스를 p인스턴스화한것 만약에 person p = new person( 넘겨주고싶은값); person 이라는 클래스에 넘겨 주고싶은 값이 있다하면 person ( "***"); 만 봤을 때는 메소드의 호출하는 것 같음 생성자를 만들어 줘야함 생성자는 클래스의 이름 과 동일하다 class person{ public String delimiter // 어디로 전할 것인지 변수가 필요 인스턴스 변수 public person(String delimiter) this.delimiter // 생성자 변수 = de..

제너릭 메소드 (생활코딩)

제너릭은 클래스 내부에서 사용할 데이터를 외부에서 지정하는 기법 class Person{ //person 이라는 는 클래스를 정의하는 시점에서는 info라는 데이터 타입을 명시적으로 지정하고있지않음 public T info; //info 라는 필드의 데이터 타입 } Personp1 = new Person(); Personp2 = new Person(); person 이라는 클래스를 p1이라는 객체로 인스턴스화할때 구체적이라는 string이라는 데이터 타입을 구체적으로 명시 즉 클래스를 만들때는 명시적으로 데이터 타입을 정해놓지않지만 인스턴스화할때 정해놓은 데이터 타입이 로 전해져 info라는 필드의 데이터 타입이 정해짐 p1.info String p2.info StringBuilder 즉 클래스를 정의할..

별찍기 왼쪽아래가 직각인 삼각형 왼쪽위가 직각인 삼각형

static 사용 해서출력을 해보았다 원래는 그냥 바로 for문 돌려서 사용해 봤는데 이번에는 함수 호출 방식으로 사용 여기서 메모리에올릴때는 stati void 로 올렸는데 그 이유는 정해진 형태가 없기때문 삼각형은 int도 string 도 char 형도 아니기 때문이다. 이 삼각형을 그리면서 내가 했던 최대의 실수는 이중 for문안 에 for문의 길이값의 변화를 줘야하는데 변화를 주지않아서 계속해서 직사각형 별이 나왔다는것. ex)for( int i =5; i>0 ; i--) 이렇게 작성했다는것.. 그러니 54321만 출력이되지 이점은 유의 하도록 하자 .