클래스는 필드와 메소드를 가진다필드 - 클래스의 속성메소드 - 클래스의 기능static이 붙은 메소드는 클래스 메소드인스턴스를 만들어도 사용 가능. why? 메모리에 올라가있기때문클래스 메소드(static method)안에서는 클래스 필드만 사용할 수 있다.why? s
상속 ㅁㅁ는 ㅇㅇ의 종류중 하나다. → 상속 상속 = 일반화 + 확장 상속은 가장 강한 결합이다 - 좋은 프로그래밍 → 결합도 ↓ 응집도 ↑ 그러므로 잘못 상속받으면 타격이 너무 크기 때문에 잘 써야한다. 아무것도 상속받지 않으면 자동으로 java.lang.Ob
오버로딩 - 매개변수의 타입이 다르거나 매개변수의 개수가 다른 같은 이름의 메소드ex) System.out.println(); 매개변수가 달라도 하나의 함수만으로 출력한다오버라이딩 - 부모가 가지고 있는 메소드와 리턴 타입, 매개변수, 메소드 이름이 같음 재정의!!
인스턴스를 생성할때 사용된다.클래스 이름과 같다.return type이 없다. Car c1 = new Car();매개변수가 0개인 생성자를 기본 생성자라고 한다.이름을 가지고 인스턴스가 만들어지고 싶게 한다?생성자가 하나라도 만들어지면 기본 생성자는 만들어지지 않는다.

1.문법 검사2.타입 검사3.바이트 코드 생성4.SwitchDemo2.class 파일 생성1.클래스 로딩클래스 정보가 Method Area(메서드 영역)에 올라감. 2.main() 호출 → Stack main 메서드가 Stack에 push 됨 Stack 안에는:
오버로딩을 계속해야 할 시 가변개수인자로 해결할 수 있다. 이걸a a b a b c a b c d //결과
만약 ArrayList를 linekdlist로 바꿔야한다면?만약 ArrayList로 했는데 LinkedList로 바꿔야한다면..addFirst가 없으니까 안됨 구체적인 객체에 의존하면안된다는것Collection 사용시 부모에도있고 자식에도 있는 공통된 메소드를 호출하기
스트림은 컬렉션(배열 포함)의 저장 요소를 하나씩 참조해서 람다식으로 처리한다.스트림은 데이터 처리에 중점을 둔다.1.스트림은 람다식으로 데이터를 처리한다.2.스트림은 자바에서 제공하는 유용한 메서드(+ 함수형 인터페이스)들을 사용한다. 스트림은 중간연산과 최종연산으로