인스턴스 필드(변수)
static으로 선언되지 않은 모든 변수(필드)는 인스턴스필드
public double r;
클래스의 인스턴스와 연관, 생성된 모든 객체는 자신만의
복사본을 가진다.
클래스 내부에서 이름하나만으로 지칭된다.
public double r;
public double area() {
return PI * r * r;
}
클래스 외부에서는 클래스를 인스턴스화한 객체.변수명 형
태로 사용한다. 인스턴스 필드(변수)의 값은 한객체를 다른
객체와 구분한다.
Circle c = new Circle(); c.r=2.0;
Circle c1 = new Circle(); c1.r=5.0;
인스턴스 메소드
static으로 선언되지 않은 모든 메소드
public double area();
클래스의 인스턴스(객체)와 연관된다.
static이든, 아니든 모든 클래스멤버 사용가능
클래스 외부에서는 클래스를 인스턴스화한 객체.메소드명 형태로 사용한다.
인스턴스 필드(변수)의 값은 한객체를 다른객체와 구분한다.
Circle c = new Circle(); c.r=2.0;
double a = c.area(); //객체 c에는 이미 r 값이 setting됨
- 매개변수가 없는 c.area()가 어떤 데이터에 대해 수행될건지 어떻게 아는가? 사실 모든 인스턴스 메소드는 암시적인 this 매개변수를 가지고 실행된다. This는 메소드가 호출되는 객체(Circle)이다. This 매개변수는 항상 필요하지는 않기에 메소드 시그네쳐에 보이지 않는다.
메소드가 그자신의 필드(변수)등을 접근한다는것을 명시적으로 this를 이용하여 지정할수 있다.
public double area() {
return Circle.PI * this.r * this.r;
}
클래스 멤버예제(Circle1.java)
class Circle {
//클래스 변수(필드), 상수정의
public static final double PI = 3.141592;
//클래스 메소드
public static double radianToDegree(double rads) {
return rads * 180 / PI;
}
//인스턴스 필드(변수), 원의반지름
public double r;
//인스턴스 메소드, 원의 면적계산
public double area() { return PI * r * r; }
//인스턴스 메소드,원주계산
public double circumference() { return 2 * PI * r; }
}
public class Circle1 {
public static void main(String[] args) {
Circle c = new Circle();
c.r = 4.0;
//인스턴스 메소드 이용
System.out.println("반지름이 4인 원의 면적은 : " + c.area());
System.out.println("반지름이 4인 원의 원주는 : " + c.circumference());
//클래스 메소드및 클래스변수(필드) 이용
System.out.println("2 * PI의 Degree는 : " +
Circle.radianToDegree(2.0*Circle.PI) + "도 입니다.");
}
}
static으로 선언되지 않은 모든 변수(필드)는 인스턴스필드
public double r;
클래스의 인스턴스와 연관, 생성된 모든 객체는 자신만의
복사본을 가진다.
클래스 내부에서 이름하나만으로 지칭된다.
public double r;
public double area() {
return PI * r * r;
}
클래스 외부에서는 클래스를 인스턴스화한 객체.변수명 형
태로 사용한다. 인스턴스 필드(변수)의 값은 한객체를 다른
객체와 구분한다.
Circle c = new Circle(); c.r=2.0;
Circle c1 = new Circle(); c1.r=5.0;
인스턴스 메소드
static으로 선언되지 않은 모든 메소드
public double area();
클래스의 인스턴스(객체)와 연관된다.
static이든, 아니든 모든 클래스멤버 사용가능
클래스 외부에서는 클래스를 인스턴스화한 객체.메소드명 형태로 사용한다.
인스턴스 필드(변수)의 값은 한객체를 다른객체와 구분한다.
Circle c = new Circle(); c.r=2.0;
double a = c.area(); //객체 c에는 이미 r 값이 setting됨
- 매개변수가 없는 c.area()가 어떤 데이터에 대해 수행될건지 어떻게 아는가? 사실 모든 인스턴스 메소드는 암시적인 this 매개변수를 가지고 실행된다. This는 메소드가 호출되는 객체(Circle)이다. This 매개변수는 항상 필요하지는 않기에 메소드 시그네쳐에 보이지 않는다.
메소드가 그자신의 필드(변수)등을 접근한다는것을 명시적으로 this를 이용하여 지정할수 있다.
public double area() {
return Circle.PI * this.r * this.r;
}
클래스 멤버예제(Circle1.java)
class Circle {
//클래스 변수(필드), 상수정의
public static final double PI = 3.141592;
//클래스 메소드
public static double radianToDegree(double rads) {
return rads * 180 / PI;
}
//인스턴스 필드(변수), 원의반지름
public double r;
//인스턴스 메소드, 원의 면적계산
public double area() { return PI * r * r; }
//인스턴스 메소드,원주계산
public double circumference() { return 2 * PI * r; }
}
public class Circle1 {
public static void main(String[] args) {
Circle c = new Circle();
c.r = 4.0;
//인스턴스 메소드 이용
System.out.println("반지름이 4인 원의 면적은 : " + c.area());
System.out.println("반지름이 4인 원의 원주는 : " + c.circumference());
//클래스 메소드및 클래스변수(필드) 이용
System.out.println("2 * PI의 Degree는 : " +
Circle.radianToDegree(2.0*Circle.PI) + "도 입니다.");
}
}
오라클자바커뮤니티교육센터, 개발자전문교육, 개인80%환급
www.oraclejavacommunity.com
평일주간(9:30~18:10) 개강
(7/21)[기업100%환급]자바기초에서 JDBC, Servlet/JSP까지
(7/21)[기업100%환급]Spring ,MyBatis,Hibernate실무과정
(7/21)[기업100%환급]PL/SQL,ORACLE HINT,TUNING
(7/21)[채용예정교육]오라클자바개발잘하는신입뽑기프로젝트,교육전취업확정
(7/28)[기업100%환급]C#4.0,WinForm,ADO.NET프로그래밍
(7/28)[기업100%환급]안드로이드개발자과정
(7/28)[기업100%환급]SQL기초에서 Schema Object까지
평일야간(19:00~21:50) 개강
(7/16)Spring3.X, MyBatis, Hibernate실무과정
(7/21)웹퍼블리싱 마스터
(7/22)자바기초에서JSP,Ajax,jQuery,Spring3.2,MyBatis까지
(7/22)닷넷(C#,Network,ADO.NET,ASP.NET)마스터과정
(7/24)SQL기초에서실무까지
(7/29)안드로이드개발자과정
(8/05)MyBatis3.X, Hibernate4.X ORM실무과정
주말(10:00~17:50) 개강
(7/19)JSP,Ajax,jQUERY,Spring,MyBatis,Hibernate속성과정
(7/19)SQL초보에서 Schema Object까지
(7/19)C#,ASP.NET마스터
(7/19)Spring3.X, MyBatis, Hibernate실무과정
(7/19)웹퍼블리싱 마스터
(7/19)안드로이드개발자과정
(7/26)개발자를위한PLSQL,SQL튜닝,힌트
(8/02)MyBatis3.X, Hibernate4.X ORM실무과정
(8/09)자바기초에서JSP,Ajax,jQuery,Spring3.2,MyBatis까지
(8/23)JAVA,Network&WEB&Framework(자바기초에서웹스프링까지)
주말저녁(18:30~22:20) 개강
(8/02)JAVA,Network&WEB&Framework
(8/09)SQL기초에서실무까지
www.oraclejavacommunity.com
평일주간(9:30~18:10) 개강
(7/21)[기업100%환급]자바기초에서 JDBC, Servlet/JSP까지
(7/21)[기업100%환급]Spring ,MyBatis,Hibernate실무과정
(7/21)[기업100%환급]PL/SQL,ORACLE HINT,TUNING
(7/21)[채용예정교육]오라클자바개발잘하는신입뽑기프로젝트,교육전취업확정
(7/28)[기업100%환급]C#4.0,WinForm,ADO.NET프로그래밍
(7/28)[기업100%환급]안드로이드개발자과정
(7/28)[기업100%환급]SQL기초에서 Schema Object까지
평일야간(19:00~21:50) 개강
(7/16)Spring3.X, MyBatis, Hibernate실무과정
(7/21)웹퍼블리싱 마스터
(7/22)자바기초에서JSP,Ajax,jQuery,Spring3.2,MyBatis까지
(7/22)닷넷(C#,Network,ADO.NET,ASP.NET)마스터과정
(7/24)SQL기초에서실무까지
(7/29)안드로이드개발자과정
(8/05)MyBatis3.X, Hibernate4.X ORM실무과정
주말(10:00~17:50) 개강
(7/19)JSP,Ajax,jQUERY,Spring,MyBatis,Hibernate속성과정
(7/19)SQL초보에서 Schema Object까지
(7/19)C#,ASP.NET마스터
(7/19)Spring3.X, MyBatis, Hibernate실무과정
(7/19)웹퍼블리싱 마스터
(7/19)안드로이드개발자과정
(7/26)개발자를위한PLSQL,SQL튜닝,힌트
(8/02)MyBatis3.X, Hibernate4.X ORM실무과정
(8/09)자바기초에서JSP,Ajax,jQuery,Spring3.2,MyBatis까지
(8/23)JAVA,Network&WEB&Framework(자바기초에서웹스프링까지)
주말저녁(18:30~22:20) 개강
(8/02)JAVA,Network&WEB&Framework
(8/09)SQL기초에서실무까지
댓글 없음:
댓글 쓰기