- 
                            
                            [JAVA] 객체지향언어 : 클래스와 객체 (1)프로그래밍/JAVA 2015. 7. 7. 00:00반응형객체지향언어의 장점 - 코드의 재사용성이 높다 : 새로운 코드를 작성할 떄 기존의 코드를 이용하여 쉽게 작성 가능 - 코드의 관리가 용이 : 코드간의 관계를 이용해 적은 노력으로 쉽게 코드 변경 가능 - 신뢰성이 높은 프로그래밍 가능 : 제어자와 메서드를 사용해서 데이터를 보호하고 올바른 값을 유지하도록 하며 코드의 중복을 제거하여 코드의 불일치로 인한 오동작 방지 가능 
 
 클래스와 객체 클래스의 정의: 객체를 정의해둔것 클래스의 용도 : 객체를 생성하는데 사용 객체의 정의 : 실제로 존재하는것, 사물 또는 개념 객체의 용도 : 객체가 가지고 있는 기능과 속성에 따라 다름 유형의 객체 : 책상, 의자, 자동차, TV와 같은 사물 무형의 객체 : 수학공식, 프로그램 에러와 같은 논리나 개념 객체와 인스턴스 클래스로부터 객체를 만드는 과정을 클래스의 인스턴스화라고하며 클래스로부터 만들어진 객체를 그 클래스의 인스턴스라 칭함. 클래스 ->(인스턴스화) -> 인스턴스(객체) 객체의 구성요소 - 속성과 기능 
 
 오늘의 코드 package j0706; class Tv { // Tv의 속성(멤버변수) String Color; boolean power; int channel; // Tv의 기능(메서드) void power() { power = !power; } void channelUp() { ++channel; } void channelDown() { --channel; } } public class TvTest { public static void main(String[] args) { Tv t; // Tv인스턴스를 참조하기 위한 변수 t선언 t = new Tv(); // Tv인스턴스를 생성 t.channel = 7; // Tv인스턴스의 멤버변수 channel의 값을 7로 설정 t.channelDown(); System.out.println("현재 채널은 " + t.channel + " 입니다."); } } package j0706; class Tv { // Tv의 속성(멤버변수) String Color; boolean power; int channel; // Tv의 기능(메서드) void power() { power = !power; } void channelUp() { ++channel; } void channelDown() { --channel; } } public class TvTest2 { public static void main(String[] args) { Tv t1 = new Tv(); Tv t2 = new Tv(); System.out.println("t1의 채널값은 " + t1.channel + "입니다"); System.out.println("t2의 채널값은 " + t2.channel + "입니다"); t1.channel = 7; // 채널값을 7으로한다. System.out.println("t1의 채널값을 7로 변경하였습니다."); System.out.println("t1의 채널값은 " + t1.channel + "입니다."); System.out.println("t2의 채널값은 " + t2.channel + "입니다."); } } package j0706; public class TvTest3 { public static void main(String[] args) { Tv t1 = new Tv(); Tv t2 = new Tv(); System.out.println("t1의 채널값은 " + t1.channel + "입니다"); System.out.println("t2의 채널값은 " + t2.channel + "입니다"); t2 = t1; // t1이 저장하고 있는 값(주소)를 t2에 저장한다. t1.channel = 7; System.out.println("t1의 채널값을 7로 변경하였습니다."); System.out.println("t1의 채널값은 " + t1.channel + "입니다"); System.out.println("t2의 채널값은 " + t2.channel + "입니다"); } } 반응형'프로그래밍 > JAVA' 카테고리의 다른 글[JSP] JSP 기본 (1) (0) 2015.07.13 [JAVA] IO Stream (1) (0) 2015.07.08 [JAVA] 객체지향 프로그래밍 (2) (0) 2015.07.08 [JAVA] 배열의 종류 및 활용 (0) 2015.07.06 [JAVA] 배열의 활용 (0) 2015.07.03