목록JAVA/Basic (27)
군침이 싹 도는 코딩
String name ; public String tel ; private String address ; # 접근제어자란 멤버변수에 데이터 타입 왼쪽에 붙일수 있는것으로 이것을 사용하면 접근을 제어할 수 있다 총 4가지가있다 1. default ( 아무것도 없는것 ) 2. public : 아무곳에서 접근 가능 3. private : 다른곳에서 접근 불가 4. protected : 상속받은곳에서만 사용가능 위 코드에서보면 퍼블릭으로 지정된 멤버변수 tel은 어떤 패키지에서도 사용이 가능하다 private 로 지정한 address는 다른곳에서는 사용이 불가능하다 그래서 다른곳에서 사용하려면 함수로 만들어줘야한다 private String name ; private String tel ; private Str..
public void setData(String name, String tel, String address) { this.name = name; this.tel = tel; this.address = address; # this 는 멤버변수나 메소드를 지칭할때 사용한다 이유는 함수에 파라미터와 멤버변수의 이름이 같으면 헷갈리기때문에 이것을 구분해주기위해서 이렇게 this 를 사용하면 파라미터와 멤버변수의 이름을 같이 써도 되기때문에 함수를 만들때와 사용할때에 편리하게 사용할 수 있다
public class Member { String name; String tel; String address; // 생성자 (Constructor) Member(){ } # 클래스를 만들고 멤버 변수를 생성하면 눈에 보이진 않지만 저렇게 생성자 (Constructor) 가 생성된다 이것은 메소드 오버로딩을 해서 메모리 공간 확보와 데이터 입력을 동시에 할 수있다 public class Member { String name; String tel; String address; // Constructor(생성자) Member(){ } // Constructor(생성자) 메소드 오버로딩 Member(String pName, String pTel, String pAddress){ name = pName; tel..
public class Add { // 두 정수를 더해서 합을 리턴하는 함수 int add(int x, int y) { return x + y; } // 두 실수를 더해서 합을 리턴하는 함수 double add(double x, double y) { return x + y; } // 두 문자열을 더해서 리턴하는 함수 String add(String x , String y) { return x + y; } int add(int x, int y, int z){ return x+y+z; } } # 메소드 오버로딩이란 함수의 이름은 동일하지만 파라미터의 데이터 타입이나 갯수가 달라도 같은 함수의 이름으로 처리하게 해주는 기능이 메소드 오버로딩이다 위 코드는 add라는 함수로 정수 실수 문자열을 더할수있게 메소드..
public class StaticVar { // static (전역) 변수 => 공유 static int count = 1; // 멤버 변수 => 자기 자신만의 데이터 int data = 0; # 스태틱 변수란 멤버 변수와는 다르게 값을 공유한다 sv1.data = 10; sv2.data = 500; StaticVar.count = 33; sv1.print(); sv2.print(); >>> count : 33 data : 10 >>> count : 33 data : 500 # 스태틱 변수의 사용법은 클래스이름.변수명을 쓴다 결과를 보면 스태틱변수인 count는 양쪽다 33으로 되었고 멤버변수인 data는 10 , 500으로 양쪽이 다르다 # 메모리에서보면 스태틱(전역) 변수는 데이터 영역에 들어가있다
# JAVA의 함수를 정의할때는 메인 함수 위쪽에 class 쪽에다가 써주어야한다 int add(int a, int b) { int total = a + b; return total; } # 함수의 정의 방법은 데이터타입 함수명(파라미터) {함수 기능과 리턴값} 이다 이때 쓰는 데이터 타입은 리턴의 데이터타입이다 위 코드를 보면 int로 써서 리턴값도 반드시 int로 돌아와야한다 FuncTest ft = new FuncTest(); System.out.println( ft.add(3, 4) ); >>> 7 # 함수의 호출은 main 함수안에서 이루어지며 먼저 해당 클래스의 이름을 정의해주고 그 다음 해당클래스이름.사용할 함수이름(파라미터) 를 적어주면 된다 String getGrade(int size) ..
변수.length # 배열의 길이를 알고 싶다면 배열을 저장한 변수명.length를 사용하면 된다 int[] engScoreArr = new int[30]; for (int i = 0; i < engScoreArr.length; i++) { if( i % 7 == 0 ) { engScoreArr[i] = 40; } else { engScoreArr[i] = 30; } } # 이것은 for문을 만들때 가운데 조건에 배열의 길이를 따로 써줄 필요없이 변수명.length를 써서 배열 길이만큼을 반복하게 할 수 있다