728x90
반응형

compile java에서  1010바이트 코드로 변환

 

BoxEx.java

package three;

class Box{
	long idNum;
	static long boxID = 0;
	
	public Box() {
		idNum = boxID++;
	}
}

public class BoxEx {

	public static void main(String[] args) {
		Box box1 = new Box();
		Box box2 = new Box();
		Box box3 = new Box();
		Box box4 = new Box();
		System.out.println("box1의 idNum : " + box1.idNum);
		System.out.println("box2의 idNum : " + box2.idNum);
		System.out.println("box3의 idNum : " + box3.idNum);
		System.out.println("box4의 idNum : " + box4.idNum);
		System.out.println("박스 총 개수 : " + Box.boxID);
	}
}​
box1의 idNum : 0
box2의 idNum : 1
box3의 idNum : 2
box4의 idNum : 3
박스 총 개수 : 4

 

AccountEx.java
package three;

class Account {
	int count;
	static int total;
	
	Account(int amount) {
		count += amount;
		total += amount;
	}
}


public class AccountEx {

	public static void main(String[] args) {
		System.out.println("Account.total : " + Account.total);
		
		Account acc01 = new Account(10);
		System.out.println("acc01.total : " + acc01.total);
		System.out.println("acc01.count : " + acc01.count);
		
		Account acc02 = new Account(10);
		System.out.println("acc01.total : " + acc02.total);
		System.out.println("acc01.count : " + acc02.count);
		
		Account acc03 = new Account(10);
		System.out.println("acc01.total : " + acc03.total);
		System.out.println("acc01.count : " + acc03.count);
		
	}

}​
Account.total : 0
acc01.total : 10
acc01.count : 10
acc01.total : 20
acc01.count : 10
acc01.total : 30
acc01.count : 10​
Ex.java
package three;

class Box1 {
	long idNum;
	static long boxID = 100;
	
	static long getcurrentID() {
		return ++boxID;
//		return boxID++;
	}
}

public class Ex {
	public static void main(String[] args) {
		Box1 mybox1 = new Box1();
		mybox1.idNum = Box1.getcurrentID();
		
		Box1 mybox2 = new Box1();
		mybox2.idNum = mybox2.getcurrentID();
		
		System.out.println("mybox1의 id 번호 : " + mybox1.idNum);
		System.out.println("mybox2의 id 번호 : " + mybox2.idNum);
		System.out.println("박스의 번호는 " + Box1.boxID + "번 입니다.");
	}
}​
mybox1의 id 번호 : 100
mybox2의 id 번호 : 101
박스의 번호는 102번 입니다.
FieldEx.java
package three;

class Field {
	static int classVar = 10; //클래스 변수 선언
	int instanceVar = 20; //인스턴스 변수 선연 = 멤버변수
	
	void method() {
		int something = 10; //지역 변수
		System.out.println(something);
	}
}

public class FieldEx {
	public static void main(String[] args) {
		int var = 30; //지역 변수 선언
		System.out.println(var + "\n"); //지역 변수 참조
		
		Field myField1 = new Field(); //인스턴스 생성
		Field myField2 = new Field(); //인스턴스 생성
		
		System.out.println(Field.classVar); //클래스 변수 참조
		System.out.println(myField1.classVar);
		System.out.println(myField2.classVar + "\n");
		
		myField1.classVar = 100; //클래스 변수의 값을 변경
		
		System.out.println(Field.classVar); //클래스 변수 참조
		System.out.println(myField1.classVar);
		System.out.println(myField2.classVar + "\n");
		
		System.out.println(myField1.instanceVar); //인스턴스 변수 참조
		System.out.println(myField2.instanceVar + "\n");
		
		myField1.instanceVar = 200; //인스턴스 변수의 값을 변경
		
		System.out.println(myField1.instanceVar); //인스턴스 변수 참조
		System.out.println(myField2.instanceVar);
		myField1.method();
	
	}
}​

30

10
10
10

100
100
100

20
20

200
20
10​


MethodEx.java
package three;

class Method {
	//public Method(){}
	int a = 10, b = 20; //멤버변수, 인스턴스변수
	int add() { return a + b ; } //멤버메소드, 인스턴스메소드 //30
	static int add(int x, int y) { return x + y; } //static메소드-멤버위장,정적변수, 클래스변수 //50
}

public class MethodEx {
	public static void main(String[] args) { //메인메소드
		System.out.println(Method.add(20, 30)); //50
		//Method.add(20, 30) static메소드,클래스메소드,정적메소드 호출문
		Method myMethod = new Method();
		//객체생성문
		System.out.println(myMethod.add()); //30
		//myMethod.add() 메소드,멤버메소드,인스턴스 메소드 호출문
	}
}
50
30
School.java
package three;

class Student {
	private String name;
	private int id;
	private int age;
	
	public Student() {} //기본생성자
	
	public Student(String name, int id, int age) { //기타생성자
		this.name = name;
		this.id = id;
		this.age = age;
	}
	public void setName(String name) {this.name = name;} //메소드
	public void setId(int id) {this.id = id;} //메소드
	public void setAge(int age) {this.age=age;} //메소드
	
	public String getName() {return name;} 
	public int getId() {return id;}
	public int getAge() {return age;}
}

public class School {
	public static void main(String[] args) {
		Student stu = new Student();
		stu.setName("홍길동");
		stu.setId(2017313297);
		stu.setAge(20);
		
		System.out.println("이름 : " + stu.getName());
		System.out.println("학번 : " + stu.getId());
		System.out.println("나이 : " + stu.getAge());
		
		Student s1 = new Student("마이콜", 220302005, 25);
		Student s2 = new Student("고길동", 200302001, 41);
		
		Student[] sarr = new Student[2];
		sarr[0] = s1;
		sarr[1] = s2;
		System.out.printf("%s, %s, %d\n", sarr[0].getName(),sarr[0].getId(), sarr[0].getAge());
		System.out.println(sarr[1].getName() + ", " + sarr[1].getId() + ", " + sarr[1].getAge());
				
		
	}
}​
이름 : 홍길동
학번 : 2017313297
나이 : 20
마이콜, 220302005, 25
고길동, 200302001, 41
728x90
반응형

'[JAVA]' 카테고리의 다른 글

[20231222] 10일차 오후  (0) 2023.12.22
[20231222] 10일차  (0) 2023.12.22
[20231221] 9일차 오전  (0) 2023.12.21
[20231220] 8일차 오후  (0) 2023.12.20
[20231220] 8일차 - 객체  (0) 2023.12.20

+ Recent posts