您的位置:首页 > 其它

面向对象入门实例:小明去考试1.1版本加入了封装

2017-06-27 00:00 405 查看


运行结果

D:\java312\xm>javac -encoding utf-8 -d classes src/*.java

D:\java312\xm>java -classpath .;classes com.dayuanit.xm.test.TestDemo
家住天墉城十六街区的15岁的小明骑着价值为1990元的黄色的ofo自行车去考试,考试地点是
长江路199号
小明做选择题1
小明做选择题2
小明做选择题3
小明做选择题4
小明做选择题5
小明做判断题1
小明做判断题2
小明做判断题3
小明做判断题4
小明做判断题5
小明做判断题6
小明做判断题7
小明做判断题8
小明做判断题9
小明做判断题10

D:\java312\xm>


package com.dayuanit.xm.test;

import com.dayuanit.xm.user.Person;
import com.dayuanit.xm.edu.*;
import com.dayuanit.xm.tools.Bike;

public class TestDemo {
public static void main(String[] args) {
Person person = new Person();
person.setName("小明");
person.setAge(15);
person.setAddress("天墉城十六街区");

Bike bike = new Bike();
bike.setBrand("ofo自行车");
bike.setPrice(1990);
bike.setColor("黄色的");

School school = new School();
school.setName("外国语中学");
school.setAddress("长江路199号");

person.goToSchool(bike, school);

Content content = new Content();
content.setChioce(5);
content.setJudge(10);
person.exam(content);
}
}

package com.dayuanit.xm.user;

import com.dayuanit.xm.tools.Bike;
import com.dayuanit.xm.edu.*;

public class Person {
private String name;
private int age;
private String address;

public Person() {

}

public Person(String name, int age, String address) {
this.name = name;
this.age = age;
this.address = address;
}

public void goToSchool(Bike bike, School school) {
bike.move(this, school);//将对象整个传给move方法
}

public void exam(Content content) {
content.exam(this);//将this对象传给exam方法
}

public void setName(String name) {
this.name = name;
}

public String getName() {
return name;
}

public void setAge(int age) {
this.age = age;
}

public int getAge() {
return age;
}

public void setAddress(String address) {
this.address = address;
}

public String getAddress() {
return address;
}
}

package com.dayuanit.xm.tools;

import com.dayuanit.xm.user.Person;
import com.dayuanit.xm.edu.School;

public class Bike {
int price;
String brand;
String color;

public Bike() {

}

public Bike(int price, String brand, String color) {
this.price = price;
this.brand = brand;
this.color = color;
}

public void move(Person person, School school) {
System.out.println("家住"
+ person.getAddress()
+ "的"
+ person.getAge()
+ "岁的"
+ person.getName()
+ "骑着价值为"
+ price
+ "元的"
+ color
+ brand
+ "去考试,"
+ "考试地点是"
+ school.getAddress());
}

public void setPrice(int price) {
this.price = price;
}

public int getPrice() {
return price = price;
}

public void setBrand(String brand) {
this.brand = brand;
}

public String getBrand() {
return brand;
}

public void setColor(String color) {
this.color = color;
}

public String getColor() {
return color;
}
}


package com.dayuanit.xm.edu;

public class School {
String address;
String name;

public School() {

}

public School(String address, String name) {
this.address = address;
this.name = name;
}

public void setAddress(String address) {
this.address = address;
}

public String getAddress() {
return address;
}

public void setName(String name) {
this.name = name;
}

public String getName() {
return name;
}
}


package com.dayuanit.xm.edu;

import com.dayuanit.xm.user.Person;

public class Content {
int chioce;
int judge;

public Content() {

}

public Content(int chioce, int judge) {
this.chioce = chioce;
this.judge = judge;
}

public void exam(Person person) {
for(int x = 1; x <= chioce; x++) {
System.out.println(person.getName()
+ "做选择题"
+ x);
}

for(int x = 1; x <= judge; x++) {
System.out.println(person.getName()
+ "做判断题"
+ x);
}
}

public void setChioce(int chioce) {
this.chioce = chioce;
}

public int getChioce() {
return chioce;
}

public void setJudge(int judge) {
this.judge = judge;
}

public int getJudge() {
return judge;
}
}


编译用javac -encoding utf-8 -d classes src/*.java

-d表示把编译的自解码放在后面制定的文件夹javac -d . xxx.javayun

运行java -classpath .; classes com.dayuanit.xm.test.TestDemo
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  封装实例