JAVA 공부하기 91.

this의 사용

 

public class ThisTest4

{

static String str1;

 

ThisTest4()

{ this("jsun"); }        // 생성자에서 생성자 호출

 

ThisTest4(String v1)

{ str1="hello"+ v1; }

 

public static void main(String[] args)

{

ThisTest4 obj1= new ThisTest4 ();

System.out.println(obj1.str1);

}

}

 

 


 

 

public class ThisTest5

{

int Q1=4;

 

public static void main(String[] args)

{

ThisTest5 obj1=new ThisTest5();

obj1.method1(6);

}

 

public void method1(int v1)

{

this.Q1 +=v1;

System.out.println(this.Q1);        // this.변수

}

}

 

 

 

 

 

JAVA공부하기 90

 

this의 사용

 

public class ThisTest2

{

int i=4;

 

public static void main(String args[])

{

ThisTest2 obj1 = new ThisTest2();

obj1.mth1();

System.out.println(this.i);

}

 

void mth1()

{

int i=10;

System.out.println("local i=" +i);

System.out.println("Member i=" + this.i);

}

}

 


 

public class ThisTest3

{

public static void main(String[] args)

{

ThisTest3 obj1 = new ThisTest3();

obj1.mth1();

}

public void mth1()

{

int result1= this.mth2(2,4);        // this.메서드

System.out.println(result1);

}

public int mth2(int v1, int v2)

{

int v3=v1+v2;

return v3;

}

}

 

 

 

JAVA 공부하기 89

 

this의 의미

- this는 자기 자신을 포함시키는 객체를 말함

 

 

 

this의 사용법

 

this 

언젠가 생성될 자신 객체의 메모리의 주소

 

this. 멤버필드

- 클래스내의 자신의 멤버를 직접 이용

- 메서드의 매개변수와 클래스의 멤버필드가 동일할 때 이를 구분하기 위해 사용

- this 키워드를 사용하지 않아도 무방

 

this. 멤버 메서드

- this. 멤버필드와 마찬가지로 자신의 멤버 메서드를 직접 이용

 

this()

- 클래스 자신의 생성자 메서드를 호출할 때 사용

- 자신의 생성자 메서드를 재이용

: 생성자 메서드에서 다른 생성자 메서드를 호출할 때 생성자 메서드의 호출은 제일 윗부분에서 사용해야함

 

JAVA공부하기 88

클래스 추상화와 상속 실습

 

- 클래스의 추상화 -> 일반화

- 경찰, 군인, 소방관이라는 각각의 클래스 생성

: InheritanceText.java

 

 

 

- 변수와 메서드의 중복 발생

 

- 추상화를 통한 상속

: InheritanceTest2.java

 

 

 

- 다형성 제공

: overriding, overloading

 

 

- 보다 유연한 개발이 가능

 

JAVA공부하기87

상속의 이해

 

public class Ant

{

private String name="Ant";

public String getName()

{ return name; }

public String toString()

{ return "이름 : "+name;}

public void pring()

{ System.out.println(name+"은 동굴에 산다.") }

}

 

public class WaterAnt extends Ant

{

private String where="water";

public void show()

{ System.out.println(where+"주변"); }

public void print()

{ System.out.println(getName()+"은 "+where+"에 산다."); }

}

 

public class WaterAntMain

{

public static void main(String[] args)

{

Ant ant=new Ant();

ant.print();

System.out.println(ant.toString());

 

WaterAnt sant=new WaterAnt();

want.print();

want.show();

System.out.println(want.toString());

}

}

 

 

 

WaterAnt want=new WaterAnt();

 

 

 

 

 

Ant ant1 = new Ant();

 

 

WanterAnt want= new WanterAnt();

JAVA공부하기 86

생성자메서드의 상속과 호출

 

상속된 서브 클래스에서 객체가 생성

- 슈퍼 클래스의 생성자가 먼저 수행

- 그 다음에 서브클래스의 생성자가 수행

 

자동으로 수행되는 슈퍼 클래스의 생성자는 묵시적 생성자

- 묵시적 생성자란 매개변수가 없는 생성자를 뜻함

 

오버로딩된 생성자를 호출하기 위해 "super"를 사용

- super의 사용 형식

* super(매개변수)

- 생성자 메서드는 상속되지 않음

 

생성자메서드의 상속과 호출 예제 1번

 

 

 

생성자 메서드의 상속과 호출 예제 2번

 

 

html&css공부

이번예제는 유틸메뉴를 만들어 보겠습니다. ^^

 

바디쪽 부터 시작해 볼께요.

<div id="wrap">

<div id="header">

<h1><a href="#">it개발자 스터디공간</a></h1>

<dl id="util_menu">

<dt class="hide">유틸메뉴</dd>

<dd><a href="#">홈</a></dd>

<dd><a href="#">로그인</a></dd>

<dd><a href="#">회원가입</a></dd>

<dd><a href="#">사이트맵</a></dd>

</dl>

</div>

</div>

 

CSS를 적용해보겠습니다.

 

 

<style type="text/css">

*{margin:0; padding:0;}

body{font:12px gulim,"굴림", sans-serif; color:#333;}

a{text-decoration:none; color:#333;}

.hide{position:absolute; left:-9999px; font-size:0; overflow:hidden;}

#wrap{width:770px; margin:0 auto;}

#header{height:100px; position:relative;}

#header h1{padding:30px 0 0 4px;}

#header dd{float:left; margin-left:30px; dispaly:inline;}

#util_menu{position:absolute; right:3px; top:8px;}

</style type>

 

 

 

 

연습을 계속 하다보면 실력이 up 될거에요 !!!

모두들 파이팅!!! ><

유틸메뉴 만들기 어렵지않아요~

JAVA공부하기 85

변수 및 메서드의 접근제어

 

접근 지정자로의 접근 제어

 

상속 가능한 상위클래스 멤버

- public 또는 protected 접근 지정자로 선언된 변수와 메소드

- 같은 패키지 내의 상위클래스에 있는 접근 지정자가 생략되어있는 변수와 메소드 (default)

 

상속 불가능한 상위 클래스 멤버

- 상위클래스와 하위 클래스에 같은 이름의 변수나 메소드가 있는경우

- 메소드 이름이 같은 경우는 재정의

- private 접근 지정자로 선언된 변수와 메소드

 

 

 

// 서브 클래스의 변수와 슈퍼 클래스의 변수 이름이 같을 때

 

+ Recent posts