Studynote/Computer Science 12

09.09 6장 Java객체지향프로그래밍1

e.sunie 2018. 11. 5. 01:08


point - 매서드를 이용하여 출력하기

class Tvtest

{

        public static void main(String[] args)

        {

                int x;

                Tv tv = new Tv();

                

                tv.channel = 7;

                tv.channelDown();

                tv.color = "Yellow";

                tv.power = false;

                tv.power();

                System.out.println("현재 채널 : " + tv.channel);

                tv.printChannel();

        }

}



class Tv

{

        String color;

        boolean power;

        int channel;

        void power() { power = !power; }

        void channelUp() { channel++; }

        void channelDown() { channel--; }

        void printChannel() { System.out.println("현재 채널 : " + channel); }



}

 

class CardTest

{

        public static void main(String[] args)

        {

                Card c1 = new Card();

                //Card c2 = new Card();

                //c1.kind = "Heart" ;

                //Card.height = 200;

                //c1.number = 7;

                c1.printCard();



                System.out.println(c1.kind + ":" +c1.number+ "," +Card.width+ "," +Card.height);

        }

}



class Card

{

        //초기화 순서 : 명시적-인스턴스-생성자 순으로 진행

        String kind = "Heard"; //명시적 초기화

        int number=1;

         // 인스턴스 초기화 블럭

        final static int width = 100; 

        static int height = 150;

        static { height = 200; } //클래스 초기화 블럭

        void printCard()

        {

                System.out.println(kind + ":" + number);

        }

        /*

        static void printCard()

        {

                System.out.println(kind + ":" + number);

        }

        */

        //staic이 붙으면 클래스 변수/매서드로 변환

        //클래스 매서드는 클래스 변수만 이용가능(=인스턴스변수 사용불가능)

        //반대로 인스턴스 매서드에서는 클래스 변수 이용가능



        Card() { kind = "Spade"; number = 3; } //생성자



}