본문 바로가기

JAVA/기본다지기

JAVA 9일차 필기

ch07extends 패키지에 새로운 클래스 L02Animal.java 생성

package com.javalesson.ch07extends;

class Animal{

String name, food;

public Animal(String name, String food){

this.name = name;

this.food = food;

}//생성자 규칙을 강제화 하기위해

public void walk(){

System.out.println(name+"가 "+"걷는다.");

}

public void breath(){

System.out.println(name+"가 "+"숨쉰다.");

}

public void eat(){

System.out.println(name+"가 "+food+"를 먹는다.");

}

}

class Cat extends Animal{

public Cat(String name, String food) {

super(name, food);//Animal 생성자 호출

}

//마우스 오른쪽 클릭 -> Source-> Override/Implements-> Animal.walk();

public void walk(){

System.out.print("살금살금 ");

super.walk();//두면 재정의, 삭제하면 초기화

}

}

class Dog extends Animal{

public Dog(String name, String food) {

super(name, food);

}

public void walk(){

System.out.print("터벅터벅 ");

super.walk();

}

public void breath(){

System.out.print("헥헥거리며 ");

super.breath();

}

}

public class L02Animal {

public static void main(String[] args) {

Cat c = new Cat("페르시안 고양이","물고기");

Dog d = new Dog("골든리트리버","사료");

c.walk();c.eat();c.breath();

d.walk();d.eat();d.breath();

//동물 클래스 (Animal)-> 공통점

//name, food

//먹고(eat()) 걷고(walk()) 숨쉬고(breath())

//Animal 클래스를 이용해 다른 동물들을 쉽게 만들 계획이다.

//Animal을 이용해서 고양이와 강아지를 만들어보자.

//고양이는 페르시안, 살금살금 걷고, 닭가슴살을 먹는다.

//강아지는 골든리트리버, 터벅터벅 걷고, 헥헥거리며 숨쉬고, 사료를 먹는다.

}

}


ch07extends 패키지에 새로운 클래스 L03FrameEx.java 생성 (나중에 배울 awt 맛보기)

package com.javalesson.ch07extends;


import java.awt.Frame;

import java.awt.Color;

import java.awt.Font;

import java.awt.Panel;

import java.awt.Label;


import java.awt.event.WindowEvent;

import java.awt.event.WindowAdapter;


import java.awt.event.MouseAdapter;

import java.awt.event.MouseEvent;


class FrameDemo extends Frame{

Font f = new Font ("Serif", Font.ITALIC, 20);//폰트 선언 및 생성

Panel p;//패널과 라벨선언

Label l1;

Label l2;

Label l3;

public FrameDemo(String frameName){

super(frameName);

this.addWindowListener(new WindowAdapter(){//x버튼 눌러 윈도우닫기

public void windowClosing(WindowEvent e){

System.exit(0);

}

});

p = new Panel();//패널 생성

p.setBackground(Color.ORANGE);//패널의 배경색 설정

l1new Label("Label No.1");//라벨 생성

l2new Label("Label No.2", Label.CENTER);

l3new Label("Label No.3", Label.RIGHT);

l1.setBackground(Color.BLUE);//라벨의 배경색 설정

l2.setBackground(Color.GRAY);

l3.setBackground(Color.GREEN);

l3.setFont(f);//라벨3에 폰트를 적용

                l3.setForeground(Color.WHITE); //라벨3의 폰트 색깔을 WHITE로 

l3.addMouseListener(new MouseAdapter(){

public void mouseEntered(MouseEvent evt){

l3.setBackground(Color.RED);//마우스 들어오면 빨강

}

public void mouseExited(MouseEvent evt){

l3.setBackground(Color.GREEN);//나가면 초록

}

});

//font 바꾸기, 글씨 색 바꾸기,

//frame x 버튼이 작동하도록

//Label1 마우스를 올리면 색깔이 바뀌도록

p.add(l1); p.add(l2); p.add(l3); //패널에 라벨을 추가 

this.add(p);//패널을 프레임에 추가 

this.setSize(600,400);//상속받았기 때문에 this로 부모도 접근 가능

super.setVisible(true);//부모는 접근 가능하지만 자신은 접근 불가능

//this,super 생략가능

}//생성자 end

}//class end


public class L03FrameEx {

public static void main(String[] args) {

new FrameDemo("첫번째 frame");

}//main end

}//class end


'JAVA > 기본다지기' 카테고리의 다른 글

JAVA 11일차 필기  (0) 2016.08.16
JAVA 10일차 필기  (1) 2016.08.12
JAVA 8일차 필기  (0) 2016.08.10
JAVA 7일차 필기  (0) 2016.08.09
JAVA 6일차 필기  (0) 2016.08.08