Java 202

object ch03 Define

package ch03; public class Define { public static final int MIN = 1; public static final int MAX = 9999999; public static final double PI = 3.14; public static final String GREETING = "Good Morning"; public static final int MATH_CODE = 1001; //단어가 이어지면 _를 써서 이어지게해준다 public static void main(String[] args) { //문제 1. 화면에 다 출력해봅시다. System.out.println(Define.MIN); System.out.println(Define.MAX); Syst..

Java/Excercise 2021.09.02

object ch02 StringTest2

package ch02; public class StringTest2 { public static void main(String[] args) { //한번 생성된 string 불면(immutable) //String을 연결하면 기존의 String에 연결되는 것이아닌 //새로운 문자열이 생성된다. String java = new String("java"); String android = new String("android"); //String 변수에 주소값을 확인해보고싶다면 System.out.println(java); System.out.println(System.identityHashCode(java)); //static 메서드 System을 사용하여 ()안에있는 주소값을 출력하는identityHash..

Java/Excercise 2021.09.02

object ch02 StringTest1

package ch02; public class StringTest1 { public static void main(String[] args) { //String 선언 방식 //heap 메모리에 인스턴스로 생성되는 경우 String str1 = new String("abc"); //constant pool(Data, static)에 주소를 참조하는 방식 String str2 = "abc"; //data 데이터가 들어오고 스택은 변수위에 쌓이고 return이 생기면 삭제 힙은 메모리에 쌓이는 //결론 : 힙 메모리는 생성될때마다 다른 주소 값을 가지지만, // 상수 풀에 생성된 문자열은 모두 같은 주소 값을 가지게된다. // == String str3 = new String("abc"); String st..

Java/Excercise 2021.09.02

예외처리

프로그램에서의 오류 ​ ● 컴파일 오류(compile error) 프로그램 코드 작성 중 발생하는 문법적 오류 최근에는 개발 환경(eclipse)에서 대부분의 컴파일 오류는 detection 됨 ​ ● 실행 오류(runtime error) 실행 중인 프로그램이 의도 하지 않은 동작(bug)을 하거나 프로그램이 중지 되는 오류 실행 오류는 비정상 종료가 되는 경우 시스템의 심각한 장애를 ​ ​ 예외 처리의 중요성 ​ ● 프로그램의 비정상 종료를 피하여 시스템이 원할이 실행되도록 함 ● 실행 오류가 발생한 경우 오류의 과정을 재현하는 것은 현실적으로 힘들다 ● 오류가 발생한 경우 log를 남겨서 추후 log 분석을 통해 그 원인을 파악하여 bug를 수정하는 것이 중요 ​ ​ 오류와 예외 클래스 ​ ● 시스템..

Java/정리 2021.09.01

내부클래스

● 클래스 내부에 선언한 클래스로 이 클래스를 감싸고 있는 외부 클래스와 밀접한 연관이 있는 경우가 많고, 다른 외부 클래스에서 사용할 일이 거의 없는 경우에 내부 클래스로 선언해서 사용함 ● 중첩 클래스라고도 함 ● 내부 클래스의 종류 인스턴스 내부 클래스, 정적(static) 내부 클래스, 지역(local) 내부 클래스, 익명(anonymous) 내부 클래스 ​ 인스턴스 내부 클래스 ​ ● 내부적으로 사용할 클래스를 선언 (private으로 선언하는 것을 권장) ● 외부 클래스가 생성된 후 생성됨 ( 정적 내부 클래스와 다름 ) ● private이 아닌 내부 클래스는 다른 외부 클래스에서 생성할 수 있음 OutClass outClass = new OutClass(); OutClass.InClass i..

Java/정리 2021.09.01

Object클래스

java.lang 패키지 ​ ● 프로그래밍시 import 하지 않아도 자동으로 imort됨 ● import.java.lang.*; ● 많이 사용하는 기본 클래스들이 속한 패키지 ● String, System... ​ ​ 모든 클래스는 Object 클래스를 상속 받는다 ​ ● java.lang.Object 클래스 ● 모든 클래스의 최상위 클래스는 ● 모든 클래스는 Object에서 상속받고, Object 클래스의 메서드 중 일부는 재정의해서 사용할 수 있음 ● 컴파일러가 extends Object를 추가함 ● class Student => class Student extends Object ​ toString() 메서드 ​ ● 객체의 정보를 String으로 바꾸어서 사용할 때 쓰임 ● 많이 사용하는 Stri..

Java/정리 2021.09.01

swing ch02 FlowLayoutEx(배열)

package ch02; import java.awt.FlowLayout; import java.util.ArrayList; import javax.swing.JButton; import javax.swing.JFrame; public class FlowLayoutEx extends JFrame { //반복 : 배열 ->크기를 지정해야한다. //ArrayList : 크기를 지정할 필요가없다. //배열 , ArrayList 코드수정 JButton[] buttons = new JButton[6]; //private JButton button1; //private JButton button2; //private JButton button3; //private JButton button4; //private J..

Java/Excercise 2021.09.01

swing ch01 MyFrame

package ch01; import javax.swing.JFrame; //GUI프로그램을 짜보는 패키지 //GUI 어떠한정보를 화면에 보여주게 하기위한 프로그램 public class MyFrame extends JFrame { public MyFrame() { setTitle("MYFrame 연습"); //타이틀에 이름을준다 (set) setSize(800,800); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//이 메서드가없다면 프로그램이 종료되지않아 메모리에 계속할당된다. //static : setVisible(true);//화면에 표시를해라 - true 반대는 펄스 } //메인함수 public static void main(String[] args) {..

Java/Excercise 2021.09.01

ExceptionEx4

package ch01; import java.util.logging.Logger; class Student{ String name; int grade; } public class ExceptionEx4 { public static void main(String[] args) { //로그 남겨보기 나중엔 라이브러리를 사용함. Logger logger = Logger.getLogger("MyLogger"); Student student = null; //student.name = "111"; try { student.name= "111"; }catch(NullPointerException e) { logger.warning("오류발생 : " + e.toString()); //오류가 뜰때 시간과 날짜가 확인..

Java/Excercise 2021.09.01