Android

안드로이드 개발을 위한 자바 기본 개념

아도리 2023. 2. 23. 00:38

이 글에서는 안드로이드 개발에 필요한 Java 프로그래밍 언어의 기본 사항을 몇 가지 예제와 함께 살펴보겠습니다.

1. 변수(Variable)와 데이터 유형(Data type)
변수는 프로그램에서 값을 저장하는 데 사용됩니다. Java에서 변수를 사용하려면 먼저 변수를 선언해야 합니다. 변수를 선언하는 구문은 다음과 같습니다.

data_type variable_name;

예 :

int age;
String name;

위 코드는 int 타입의 age와 String 타입의 name이라는 두 개의 변수를 선언합니다. 변수의 데이터 타입에 따라 어떤 종류의 값을 담을 수 있는지가 결정됩니다. 예를 들어 int 데이터 유형은 정수를 담을 수 있고, String 데이터 유형은 텍스트를 담을 수 있습니다.

 

2. 연산자(Operator)
연산자는 변수 및 값에 대한 연산을 수행하는 데 사용됩니다. Java의 몇 가지 일반적인 연산자는 다음과 같습니다.

+ (더하기)
- (빼기)
* (곱셈)
/ (나누기 - 몫)
% (modulus - 나머지)

예 :

int x = 5;
int y = 3;
int z = x + y; // z is now 8

3. 제어 구조체(Control Structure)
제어 구조체는 프로그램의 흐름을 제어하는 데 사용됩니다. Java의 몇 가지 일반적인 제어 구조체는 다음과 같습니다.

if/else statements (if/else 문)
for loops (for 루프)
while loops (while 루프)
switch statements (switch문)

예 :

int age = 18;

if (age >= 18) {
    System.out.println("You are an adult.");
} else {
    System.out.println("You are not yet an adult.");
}

age의 값이 앞에서 18로 할당되었으니 시스템에서는 You are an adult.를 보여주겠네요.

 

4. 클래스(Class)와 객체(Object)
클래스는 클래스의 인스턴스인 객체를 정의하는 데 사용됩니다. 클래스에는 객체에 대한 연산을 수행하는 데 사용되는 메서드가 포함될 수 있습니다. 클래스를 선언하는 구문은 다음과 같습니다.

class ClassName {
    // variables and methods go here
}

예 :

class Person {
    String name;
    int age;

    void sayHello() {
        System.out.println("Hello, my name is " + name + " and I am " + age + " years old.");
    }
}

위의 코드는 두 개의 변수(이름(name)과 나이(age))를 가진 Person이라는 클래스와 인사말을 출력하는 sayHello라는 메서드를 정의합니다.

 

여기까지 잘 따라오셨습니다. 이제 거의 막바지에 다다르고 있습니다.

 

5. 상속(Inheritance)과 다형성(Polymorphism)
상속은 한 클래스가 다른 클래스로부터 프로퍼티와 메서드를 상속할 수 있게 해줍니다. 다형성을 사용하면 서로 다른 클래스의 객체를 같은 유형인 것처럼 취급할 수 있습니다.

class Animal {
    void makeSound() {
        System.out.println("The animal makes a sound.");
    }
}

class Cat extends Animal {
    void makeSound() {
        System.out.println("The cat meows.");
    }
}

class Dog extends Animal {
    void makeSound() {
        System.out.println("The dog barks.");
    }
}

Animal animal1 = new Cat();
Animal animal2 = new Dog();

animal1.makeSound(); // output: The cat meows.
animal2.makeSound(); // output: The dog barks.

위의 코드에서 Cat과 Dog 클래스는 Animal 클래스를 상속합니다. 
특정 구현을 제공하기 위해 Cat 및 Dog 클래스에서 makeSound 메서드를 재정의합니다.

이것들은 안드로이드 개발에 사용되는 자바 프로그래밍 언어의 기본 사항 중 일부에 불과합니다. 
이제 이러한 개념이 안드로이드 앱에서 어떻게 사용되는지 예시를 살펴보겠습니다.

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        TextView textView = findViewById(R.id.textView);
        Button button = findViewById(R.id.button);
        button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                String name = "John";
                int age = 30;
                String message = "Hello, my name is " + name + " and I am " + age + " years old.";
                textView.setText(message);
            }
        });
    }
}

이 예제에서는 TextView와 Button이 있는 간단한 안드로이드 앱을 만들었습니다. 
Button을 클릭하면 TextView에 사람의 이름과 나이가 포함된 메시지가 표시됩니다.

레이아웃 파일에서 UI 요소에 대한 참조를 얻기 위해 findViewById 메서드를 사용하여 TextView 및 Button 객체를 선언합니다. 그런 다음 버튼 객체에 클릭을 수신하는 OnClickListener를 설정합니다. 버튼이 클릭되면 onClick 메서드가 호출되고 이름과 나이 변수를 사용하여 메시지를 생성합니다. 마지막으로 메시지를 TextView의 텍스트로 설정합니다.

이것은 간단한 예시일 뿐이지만 자바 프로그래밍 언어의 기본이 안드로이드 앱에서 어떻게 사용될 수 있는지 보여줍니다.

결론적으로 자바는 안드로이드 개발에 필수적인 언어이며, 자바 프로그래밍의 기본을 이해하는 것은 성공적인 안드로이드 앱을 만드는 데 매우 중요합니다. 변수와 데이터 유형, 연산자, 제어 구조, 클래스와 객체, 상속과 다형성의 기본 개념과 이러한 개념이 안드로이드 앱에서 어떻게 사용되는지에 대한 예제를 살펴보았습니다. 이 포스팅이 안드로이드 개발을 위한 Java 학습에 관심이 있는 분들에게 좋은 출발점이 되기를 바랍니다.