課堂練習4:
編寫代碼模擬手機與SIM卡的組合關係。
要求:
SIM卡類負責創建SIM卡;
Phone類負責創建手機;
手機可以組合一個SIM卡;
手機可以更換其中的SIM卡。
主要代碼:
public class Card {
String producer;
String number;
public String getProducer() {
return producer;
}
public void setProducer(String producer) {
this.producer = producer;
}
public String getNumber() {
return number;
}
public void setNumber(String number) {
this.number = number;
}
}
public class Phone {
Card card ;
public Card getCard() {
return card;
}
public void setCard(Card card) {
this.card = card;
}
public void changecard(Phone phone,Card card){
phone.setCard(card);
}
}
public class PhoneAndCardTest {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Card card1=new Card();
Card card2=new Card();
Phone phone=new Phone();
//卡一獲取電話號碼運行商
card1.setNumber("10086");
card1.setProducer("聯通");
//卡二獲取電話號碼運行商
card2.setNumber("10010");
card2.setProducer("移動");
//手機卡一
phone.setCard(card1);
System.out.println("現在手機的卡:\n 卡號"+card1.getNumber()+"\t 運行商:"+card1.producer);
//更換手機號
phone.changecard(phone, card2);
System.out.println("更換手機號後的手機號:\n 卡號"+card2.getNumber()+"\t 運行商:"+card2.producer);
}
}
運行結果:
課堂練習5:
主要代碼:
public class CPU {
private int speed;
public int getSpeed() {
return speed;
}
public void setSpeed(int speed) {
this.speed = speed;
}
}
public class HardDisk {
private int amount;//容量
public int getAmount() {
return amount;
}
public void setAmount(int amount) {
this.amount = amount;
}
}
public class PC {
private CPU cpu;
private HardDisk hardDisk;
public CPU getCpu() {
return cpu;
}
public void setCpu(CPU cpu) {
this.cpu = cpu;
}
public HardDisk getHardDisk() {
return hardDisk;
}
public void setHardDisk(HardDisk hardDisk) {
this.hardDisk = hardDisk;
}
public void show(){
System.out.println("計算機中CPU的速度:"+cpu.getSpeed()+"容量:"+hardDisk.getAmount());
}
}
public class PCTest {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
CPU cpu=new CPU();
cpu.setSpeed(2200);
HardDisk disk=new HardDisk();
disk.setAmount(200);
PC pc=new PC();
pc.setCpu(cpu);
pc.setHardDisk(disk);
pc.show();
}
}
運行結果:
課堂練習6:
–定義一個圓類(Circle),其所在的包爲bzu.info.software;定義一個圓柱類Cylinder,其所在的包爲bzu.info.com;定義一個主類A,其所在的包也爲bzu.info.com,在A中生成一個Cylinder對象,並輸出其體積。編譯並運行該類。
–試着改變求體積方法的訪問權限,查看並分析編譯和運行結果
–把Cylinder類和A類置於不同的包中,通過對求體積方法設置不同的訪問權限,查看並分析編譯和運行結果
主要代碼:
package bzu.info.software;
public class Circle {
private int r;
public int getR() {
return r;
}
public void setR(int r) {
this.r = r;
}
}
package bzu.info.com;
import bzu.info.software.Circle;
public class Cylinder {
Circle circle;
int hight;
public Circle getCircle() {
return circle;
}
public void setCircle(Circle circle) {
this.circle = circle;
}
public int getHight() {
return hight;
}
public void setHight(int hight) {
this.hight = hight;
}
}
package bzu.info.com;
import bzu.info.software.Circle;
public class A {
/**
* @param args
*/
static Circle circle;
static Cylinder cylinder;
public static void main(String[] args) {
// TODO Auto-generated method stub
circle=new Circle();
circle.setR(5);
cylinder=new Cylinder();
cylinder.setCircle(circle);
cylinder.setHight(12);
PutVolume();
}
public static void PutVolume(){
double Volume=3.14*(cylinder.getCircle().getR()*cylinder.getCircle().getR())*cylinder.getHight();
System.out.println("圓柱半徑"+circle.getR()+"高"+cylinder.getHight());
System.out.println("圓柱的面積是:"+Volume);
}
}