Skip to the content.

목표:자바의 Class에 대해 학습하세요.

클래스를 정의하는 법

먼저 자바는 객체 지향 프로그램밍이다
객체 지향 프로그래밍의 특징으로는 
추상과-실제 세상을 프로그래밍으로 옮길수 있게 필요한 기능들만 가져와서 단순화한다
캡술화-보안적인 기능에 도움을 주며 규칙 정의,사용 용도 명확히,안에 있는 값을 노출하기 않는다.
상속성-부모를 지정하고 부모의 코드를 가져가 쓸 수 있다(코드의 재사용성)=>마치 부모의 능력을 부여받는 다는 개념으로 생각하면된다
다형성-변수가 여러 가지 모습으로 변할 수 있다

클래스
하나 하나를 기능별로 묶어서 사용하는 것이다
각 클래스 안에서 역할에 따라 각 클래스의 기능을 서술한다
사람마다 여러가지 관점으로 만들수 있으며 자바는 어떤 프로그래밍이든 클래스 안에 속해있다
다른 클래스에서 다른 클래스는 선언하여 사용할 수 있다

클래스 구조
class 클래스이름{
 멤버변수(또는 필드/전역변수) ===클래스 안에서 활동하는 데이터들을 저장한다
ex)int a,b;

//생성자===처음에 값을 넣어줄 때 사용(선언을 따로 안하면 default값)
클래스 이름(){
a=10,b=15;
}
리턴타입 메서드(){===기능을 나타내며 ()안에는 전역변수를 데이터타입과 함께 입력한다

void는 리턴값이 없다는 뜻이며 리턴타입에 삽입한다
그외 모든 데이터타입은 return 데이터를 삽입하여 데이터를 전역으로 노출한다
}

 // 멤버 변수
    int age;
    String name;
    
    // 메서드(1번 경우)
    public void hello(){
    	System.out.println("hello! my name is " + this.name );
    }
    
    // 메서드(2번 경우)
    public void hello(String to){
    	System.out.println("hello! " + to +  " my name is " + this.name );
    }
    
    // 리턴 값이 있는 메서드(3번 경우)
    public String hello1(){
    
    	String hello = "hello! my name is " + this.name; 
    	return hello;
    }
    
    // 리턴 값이 있는 메서드(4번 경우)
    public String hello1(String to){
    
    	String hello = "hello! " + to +  " my name is " + this.name;
    	return hello;
    }
    
    // 기본 생성자
    Person(){
    	name = "junseo";
        age = 24;
    }
    
    // 생성자 인자(매개변수)가 존재하는 경우
    Person(String name1, int age1){
    	name = name1;
        age = age1;

객체 만드는 방법 (new 키워드 이해하기)

메소드 정의하는 방법

생성자 정의하는 방법

this 키워드 이해하기