Java31 Java 추상화 예제 - 상품 정보, 할인 금액 출력 package entity;public abstract class Product { protected String productId; protected String name; protected double price; // 디폴트 생성자 public Product() { } // 매개변수가 있는 생성자 public Product(String productId, String name, double price) { this.productId = productId; this.name = name; this.price = price; } // 상품 정보를 출력하는 추상 메서드 public abstract void d.. 2024. 12. 16. Java의 꽃 상속 - Abstract (추상클래스) 상속 시리즈1) Extend, Overriding2) Abstract 3) Interface // 부모 클래스에서 print라는 함수를 만들건데, // 이 클래스를 상속받을 사람들은 // 자기네들이 알아서 메소드를 작성할거니까 (==오버라이드) // 내가 코드 구현은 하지 않고, 함수이름만 통일해주자! 메소드의 시그니처만 정의하고, 구체적인 구현은 없는 메소드 = 추상메소드(Abstract) public abstract void print(); // 이름만 작성하고 메소드 내용은 작성 X, {}도 안써도 된다. // 함수이름은 정해두고(통일), 내용은 각 클래스에서 작성 // abstract 뜻은 추상적이다~ // 클래스 이름 앞에 abstract도.. 2024. 12. 16. Java 접근 제어자 private, protected, public OOP(Object-Oriented Programming)의 4대 원칙캡슐화 (Encapsulation): 객체의 데이터와 그 데이터를 처리하는 메서드를 하나로 묶어 외부에서 직접 접근할 수 없도록 하는 것입니다. 이를 통해 데이터의 무분별한 변경을 방지하고 객체의 안정성을 높입니다.상속 (Inheritance): 기존의 클래스를 기반으로 새로운 클래스를 생성하는 기능으로, 코드의 재사용성을 높이고 중복된 코드 작성을 줄입니다. 예를 들어, '동물' 클래스에서 '포유류' 또는 '조류' 클래스를 파생시킬 수 있습니다.다형성 (Polymorphism): 같은 이름의 메서드가 서로 다른 형태로 동작할 수 있는 능력입니다. 이는 메서드 오버로딩과 오버라이딩을 통해 구현되며, 유연한 코드 작성을 가능하게 합니다... 2024. 12. 15. Java 반복문 for, while for (초기화; 조건식; 증감식) { // 반복할 코드 } 반복문 for ( int i=0 ; i // int i = 0 i(index) 변수에 0을 저장// 조건식: i // 증감식: i에 +1하여 저장// true면 반복// i가 5가 되면 False이니 실행중단 while (조건식) { // 반복할 코드 } 반복문 int i = 0; while ( i // i 가 0// → i가 5보다 작으면 System.out.println("Hello");// 5보다 커지면 종료 int i = 0;while ( i // i=i+1 은 줄여서 i++로 나타낼 수 있다증가 감소 연산자 // 1,2,3,4,5를 더하는 식// 더할 숫자들 데이터 입력int[] number .. 2024. 12. 15. Java 조건문 if-else, switch-case if-else문// 가격이 3000원보다 싸면, "가격이 좋습니다."라고 출력하고// 그렇지 않으면 "비싸네요"라고 출력하세요.// ~라면, ~해라 // if (~라면){~해라} else {아니면 ~ 해라}{} 코드로 블록 구분 if(price 조건 연산자- 조건식 ? 결과 1 : 결과 2; 로도 가능가독성과 간결함 중 어느쪽이 우선일지 고려해서 선택하자public class Test { public static void main(String[] args) { int price = 2000; String massage = (price if-else if-else로 여러 조건을 표현할 수도 있다.public class Test { public static.. 2024. 12. 15. Java 자료형 없이 변수 선언하기 var 원래 자바의 모든 변수는 사용할 자료형을 정확히 명시해야하나 자바 10부터 생긴 문법 중지역 변수 자료형 추론 (local variable type inference)는변수에 대입되는 자료를 보고 컴파일러가 추측하여 처리가능 public class Test { public static void main(String[] args) { var num =10; var dNum =10.0; var str="hello"; num은 int로, dNum은 double로, str은 String 으로 컴파일러가 처리완료! 주의점:한번 선언한 자료형 변수를 다른 자료형으로 사용할 순 없음-str 변수는 이미 String으로 처리 되었기 때문에 정수값을 넣을 수 .. 2024. 12. 15. Java의 꽃 상속 - Extend, Overriding OOP(Object-Oriented Programming)의 4대 원칙캡슐화 (Encapsulation): 객체의 데이터와 그 데이터를 처리하는 메서드를 하나로 묶어 외부에서 직접 접근할 수 없도록 하는 것입니다. 이를 통해 데이터의 무분별한 변경을 방지하고 객체의 안정성을 높입니다.상속 (Inheritance): 기존의 클래스를 기반으로 새로운 클래스를 생성하는 기능으로, 코드의 재사용성을 높이고 중복된 코드 작성을 줄입니다. 예를 들어, '동물' 클래스에서 '포유류' 또는 '조류' 클래스를 파생시킬 수 있습니다.다형성 (Polymorphism): 같은 이름의 메서드가 서로 다른 형태로 동작할 수 있는 능력입니다. 이는 메서드 오버로딩과 오버라이딩을 통해 구현되며, 유연한 코드 작성을 가능하게 합니다... 2024. 12. 13. Java Static 키워드 Static 변수에 대해 알아봅시다~ Student의 변수들을 지정해주면서serialNumber는 static으로 지정했습니다. 어떤 차이가 있을까요?package entity;public class Student { public String name; public int id; public static int serialNumber; public Student() { } public void print(){ System.out.println("이름: "+name+" 아이디: "+id); System.out.println("스태틱 변수: "+serialNumber); }} 메인클래스에서s1. 자동 완성 기능 사용 시Student클래스에서 .. 2024. 12. 13. Java 작성 시 신경쓰면 좋은 Early return, Guard clause * return false가 먼저 오도록 작업 하기 Why?Early return이란?불필요한 코드 실행 방지: return false 이후의 코드는 실행되지 않으므로, 조건이 충족되지 않았을 때 불필요한 작업을 막을 수 있다.성능 최적화: 조건이 충족되지 않은 경우 즉시 함수를 종료함으로써 리소스를 절약할 수 있다. 예제 - 강의 등록, 취소 import entity.Lecture;import entity.Student;public class StudentTest { public static void main(String[] args) { // 학생 입력 Student s1=new Student("김나나","32번"); Student s2=new Student.. 2024. 12. 12. 이전 1 2 3 4 다음