일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- flutter 총정리
- android function
- flutter 환경설정
- php ftp upload
- 크기 리사이즈
- php
- ftp upload
- 문자치환
- ftp연동
- flutter 설치하기
- regexp
- 플러터
- AppStore
- Swift
- flutter 완벽 가이드
- ftp download
- 정규식 문자치환
- Review
- php ftp download
- db connect
- php 게시판
- flutter 실행하기
- Flutter 설치
- SKStoreReviewController
- flutter 앱 만들기
- flutter getting started
- page navigation
- php 문자치환
- 검색구현
- StoreKit
- Today
- Total
AppleTree iOS
java - 8일째(source) 본문
package console.app.exinterface;
public interface InterfacOneDay {
public String name="";
public String address="";
public int age=0;
//interface 는 자체가 추상(abstract)이고
//interface 로 선언된 메소드는 몸체를 가질수없다.
//interface 로 선언된 메소드는 무조건 추상메소드다.
//class 가 interface 상속을 받으면 반드시
//interface 메소드 몸체를 구현해야한다 (오버라이딩)
//abstract class 가 interface 을 상속 받으면
//interface 메소드 오버라이딩을 다할 필요는 없다.
//abstract class, interface 는 new를 할수 없다
//그래서 자기자신의 객체를 만들수 없다.
//단 하위자식에서 new 를 한 (객체)를 받을수는 있다.
//interface 는 자체가 추상이기 때문에 굳이 abstract 를 표시한해도 된다.
public abstract void setName(String name);
public abstract void setAddress(String address);
public abstract void setAge(int age);
public abstract String getName();
public abstract String getAddress();
public abstract int getAge();
}
package console.app.exinterface;
//class 에서 같은 종류의 class 를 받을때는 extends
//다른동류(Interface)는 implements
//interface 을 상속받는 추상클래스는 몸체를 구현한 필요가 없다.
//abstract class 는 보통 하위 클래스에서 인터페이스 메소드를 쓰고 싶은 몸체로 만들어준다.
public abstract class InterfaceChild implements InterfacOneDay {
public String name="";
public String address="";
public int age=0;
@Override
public String getAddress() {
// TODO Auto-generated method stub
return this.address;
}
@Override
public int getAge() {
// TODO Auto-generated method stub
return this.age;
}
@Override
public String getName() {
// TODO Auto-generated method stub
return this.name;
}
@Override
public void setAddress(String address) {
// TODO Auto-generated method stub
}
@Override
public void setAge(int age) {
// TODO Auto-generated method stub
}
@Override
public void setName(String name) {
// TODO Auto-generated method stub
}
}
package console.app.exinterface;
//interface 는 추상 메소드이기때문에 모든 클래스는 상속을 받으면 몸체를 구현해야한다.
//구현하지 않으면 에러
public class InterfaceChild2
implements InterfacOneDay
{
public String name="";
public String address="";
public int age=0;
@Override
public void setAddress(String address) {
this.address=address;
}
@Override
public void setAge(int age) {
this.age=age;
}
@Override
public void setName(String name) {
this.name=name;
}
@Override
public String getAddress() {
// TODO Auto-generated method stub
return this.address;
}
@Override
public int getAge() {
// TODO Auto-generated method stub
return this.age;
}
@Override
public String getName() {
// TODO Auto-generated method stub
return this.name;
}
public static void main(String[] args) {
InterfaceChild2 ob = new InterfaceChild2();
ob.setName("김현호");
ob.setAddress("미국");
ob.setAge(10);
//set 으로 담긴 값을 불러와서 InterfaceChild2 class 에서
//InterfaceOneDay 에서 이름,나이,주소에 대한 get 방식을 만들어서
//InterfaceChild2에서 구현한 다음
//출력하세요
System.out.println(ob.getName());
System.out.println(ob.getAddress());
System.out.println(ob.getAge());
}
}
package console.app.exinterface;
public class InterfaceChild4 extends InterfaceChild{
//모든클래스는 인터페이스를 받으면 몸체를 구현해야하지만
//단 추상클래스를 클래스가 상속을 받으면 반드시 메소드 몸체를 반드시 구현할 필요가 없다.
@Override
public String getAddress() {
// TODO Auto-generated method stub
return this.getAddress();
}
@Override
public int getAge() {
// TODO Auto-generated method stub
return this.getAge();
}
@Override
public String getName() {
// TODO Auto-generated method stub
return this.getName();
}
@Override
public void setAddress(String address) {
// TODO Auto-generated method stub
super.setAddress(address);
}
@Override
public void setAge(int age) {
// TODO Auto-generated method stub
super.setAge(age);
}
@Override
public void setName(String name) {
//부모클래스 setName 메소드에 값을 넘긴다.
super.setName(name);
}
public static void main(String[] args) {
InterfaceChild4 in= new InterfaceChild4();
in.setName("김현호");
System.out.println(in.getName());
}
}
package console.app.exinterface.car;
public interface BaseCar {
public String sonata="쏘나타";
public String carence="카렌스";
public String starcraft="스타";
public String basecartype="";
public int carspeedup=0;
public int carstartspeed=0;
//차의 종류에 맞추어서 자동차 속도를 증가시키고 감소기키겠습니다.
public void setCarType(String basecartype);
public String getCarType();
public void setCarspeedup(int speedup);
public int getCarspeedup();
public void setStartspeed(int initspeed);
public int gerCarstartspeed();
}
package console.app.exinterface.car;
//인터페이스를 상속받으면 인터페이스는 몸체가 없는 메소드이기때문에 반드시
//하위클래스에
public class MyCar implements BaseCar{
public String sonata="쏘나타";
public String carence="카렌스";
public String starcraft="스타";
public String basecartype="카렌스";
public int carspeedup=0;
public int carstartspeed=0;
public void print(Object ob){
System.out.println(ob);
}
@Override
public int gerCarstartspeed() {
// TODO Auto-generated method stub
return this.carstartspeed;
}
@Override
public int getCarspeedup() {
// TODO Auto-generated method stub
return this.carspeedup;
}
@Override
public String getCarType() {
// TODO Auto-generated method stub
return this.basecartype;
}
@Override
public void setCarspeedup(int speedup) {
// TODO Auto-generated method stub
if(30<speedup){
this.carspeedup=speedup;
}
}
@Override
public void setCarType(String basecartype) {
// TODO Auto-generated method stub
this.basecartype=basecartype;
}
@Override
public void setStartspeed(int initspeed) {
// TODO Auto-generated method stub
this.carstartspeed=initspeed;
}
public static void main(String[] args) {
// TODO Auto-generated method stub
MyCar mycar = new MyCar();
mycar.setCarType("쏘나타");
System.out.println(mycar.getCarType());
mycar.setStartspeed(30);
System.out.println(mycar.gerCarstartspeed());
mycar.setCarspeedup(mycar.gerCarstartspeed()+20);
System.out.println(mycar.getCarspeedup());
//자동차이름은 카렌스로 지정을 하고
//초기속도는 40으로 지정하고
//(초기속도40 + 90)과속해서 130까지 달리겠습니다.
//값을 출력해보세요.
MyCar mine = new MyCar();
mine.setCarType("카렌스");
mine.setStartspeed(40);
mine.setCarspeedup(mine.gerCarstartspeed()+90);
mine.print(mine.getCarType());
mine.print(mine.gerCarstartspeed());
mine.print(mine.getCarspeedup());
//자동차를 구별해서 (if) 내가 선책한 차로 셋팅을 하고
//속도는 초기값은 20
//증가값은 무조건 30 30이하로 내려가는 셋팅은 무시
//if(30>=speed){
//else
//내일은 변수부터하고 상,중,하
//상,중->문제
//하->복습(문서로 제공)
//String(문자열).equals(비교할문자열)
//맞으면 true
MyCar me = new MyCar();
if(me.basecartype.equals("쏘나타")){
}else if(me.basecartype.equals("카렌스")){
}else if(me.basecartype.equals("스타")){
}
}
}
미완성
ㅜㅜ
'JAVA > 기초 JAVA' 카테고리의 다른 글
java - 10일째(source) (0) | 2010.07.21 |
---|---|
java - 9일쩨(source) (0) | 2010.07.20 |
java - 7일째(source) (0) | 2010.07.16 |
java - 6일쩨(source) (0) | 2010.07.15 |
java - 5일째 (source) (0) | 2010.07.14 |