作业1:

例题9.1 制作圆类,根据圆的半径求出周长及面积

package com.swift;
//抽象的方法构成类,把属性和方法进行封装
public class Circle {
// 两个方面一个是字段也称属性,另一个是方法,也称实现的功能
private double radius; // 构造方法,有参构造
public Circle(double radius) {
this.radius = radius;
}
//方法的重载,参数不同
// 构造方法,无参构造
public Circle() {
this.radius = 1;
} // 求圆面积的方法
public double getArea() {
return radius * radius * Math.PI; } // 求圆周长的方法
public double getPerimeter() {
return 2 * Math.PI * radius;
}
public void setRadius(double newRadius) {
this.radius=newRadius;
}
}

圆类的展示类

package com.swift;

public class DemoCircle {
public static void main(String[] args) {
Circle circle1=new Circle();
double area=circle1.getArea();
System.out.println(area);
Circle circle2=new Circle(10);
System.out.println(circle2.getArea());
System.out.println(circle1.getPerimeter());
System.out.println(circle2.getPerimeter());
double ridius=10;
double areaCircle=Math.PI*ridius*ridius;
System.out.println(areaCircle);
circle2.setRadius(5);
System.out.println(circle2.getArea());
}
}

作业2:

把上边的两个圆的类合并成一个类,并实现同样功能

package com.swift;

public class SimpleCircle {

    private double radius;
public SimpleCircle() {
this.radius=1;
}
public SimpleCircle(double radius){
this.radius=radius;
}
public double getArea() {
// TODO Auto-generated method stub
return Math.PI*radius*radius;
}
public double getPerimeter() {
return 2*Math.PI*radius;
} public static void main(String[] args) {
SimpleCircle cir1=new SimpleCircle();
System.out.println("The area of the circle of radius "+cir1.radius+" is "+cir1.getArea());
SimpleCircle cir2=new SimpleCircle(10);
System.out.println("The area of the circle of radius "+cir2.radius+" is "+cir2.getArea());
}
}

作业3:

例题9.3 造一台电视机,并且实现调频道和调声音大小功能

package com.swift;

public class TV {
public int channel=1;
public int volumeLevel=1;
public boolean on=false; public TV() { }
public void turnOn() {
on =true;
System.out.println("电视机已经打开了。");
}
public void turnOff() {
on=false;
System.out.println("电视机已经关闭了。");
}
public int getChannel() {
return channel;
}
public void setChannel(int channel) {
if(on) {
System.out.println("电视机已开,可以开始调台了。");
if(channel>=1&&channel<=120) {
this.channel = channel;
System.out.println("频道已经调到 "+channel+" 台");
}else {
System.out.println("你要调的频道不存在。");
}
}else {
System.out.println("电视机关着的时候是不能调台的");
}
}
public int getVolumeLevel() {
return volumeLevel;
}
public void setVolumeLevel(int volumeLevel) {
if(on) {
System.out.println("电视机已开,声音大小可调了");
if(volumeLevel>=1&&volumeLevel<=7) {
this.volumeLevel = volumeLevel;
System.out.println("声音的大小设置成了 "+volumeLevel+" 大小");
}
}else {
System.out.println("电视机关着的时候是不能调声音的");
} }
public void channelUp() {
if(on&&channel<120) {
channel++;
}
}
public void channelDown() {
if(on&&channel>1) {
channel--;
}
}
public void volumeUp() {
if(on&&volumeLevel<7) {
volumeLevel++;
}
}
public void volumeDown() {
if(on&&volumeLevel>1) {
volumeLevel--;
}
} }

测试电视机的类

package com.swift;

public class TestTV {

    public static void main(String[] args) {
// TV tv1=new TV();
// tv1.turnOff();
// tv1.setChannel(30);
// tv1.setVolumeLevel(3); TV tv2=new TV();
tv2.turnOn();
System.out.println("TV2's channel is "+tv2.channel+" and volume is "+tv2.volumeLevel);
tv2.channelUp();
System.out.println("TV2's channel is "+tv2.channel+" and volume is "+tv2.volumeLevel);
tv2.channelUp();
System.out.println("TV2's channel is "+tv2.channel+" and volume is "+tv2.volumeLevel);
tv2.channelUp();
System.out.println("TV2's channel is "+tv2.channel+" and volume is "+tv2.volumeLevel);
tv2.volumeUp();
System.out.println("TV2's channel is "+tv2.channel+" and volume is "+tv2.volumeLevel);
tv2.volumeUp();
System.out.println("TV2's channel is "+tv2.channel+" and volume is "+tv2.volumeLevel);
tv2.volumeUp();
System.out.println("TV2's channel is "+tv2.channel+" and volume is "+tv2.volumeLevel); } }

java第九次作业:第九章例题3个的更多相关文章

  1. JAVA第九次作业

    JAVA第九次作业 (一)学习总结 1.用思维导图对javaIO操作的学习内容进行总结. 参考资料: XMind. 2.下面的程序实现了文件的拷贝,但采用的是一个字节一个字节的读写方式,效率很低.使用 ...

  2. Week09《java程序设计》第九次作业总结

    Week09<java程序设计>第九次作业总结 1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结集合与泛型相关内容. 答: 2. 书面作业 本次作业题集集合 1. Li ...

  3. 2017-2018-2 1723《程序设计与数据结构》第九周作业 & 第二周结对编程 总结

    作业地址 第九次作业:https://edu.cnblogs.com/campus/besti/CS-IMIS-1723/homework/1878 (作业界面已评分,可随时查看,如果对自己的评分有意 ...

  4. 2017-2018-1 20179205《Linux内核原理与设计》第九周作业

    <Linux内核原理与设计>第九周作业 视频学习及代码分析 一.进程调度时机与进程的切换 不同类型的进程有不同的调度需求,第一种分类:I/O-bound 会频繁的进程I/O,通常会花费很多 ...

  5. 【西北师大-2108Java】第九次作业成绩汇总

    [西北师大-2108Java]第九次作业成绩汇总 作业题目 面向对象程序设计(JAVA) 第11周学习指导及要求 实验目的与要求 (1)理解泛型概念: (2)掌握泛型类的定义与使用: (3)掌握泛型方 ...

  6. JAVA实验报告及第九周总结

    Java第九周作业 实验报告七 实验任务详情: 完成火车站售票程序的模拟. 要求: (1)总票数1000张: (2)10个窗口同时开始卖票: (3)卖票过程延时1秒钟: (4)不能出现一票多卖或卖出负 ...

  7. 2018-2019-1 20189221 《Linux内核原理与分析》第九周作业

    2018-2019-1 20189221 <Linux内核原理与分析>第九周作业 实验八 理理解进程调度时机跟踪分析进程调度与进程切换的过程 进程调度 进度调度时机: 1.中断处理过程(包 ...

  8. C#基础第九天-作业答案-储蓄账户(SavingAccount)和信用账户(CreditAccount)

    class Bank { //Dictionary<long,Account> dictionary=new Dictionary<long,Account>(); DataT ...

  9. C#基础第九天-作业-储蓄账户(SavingAccount)和信用账户(CreditAccount)

    要求1:完成以下两种账户类型的编码.银行的客户分为两大类:储蓄账户(SavingAccount)和信用账户(CreditAccount),两种的账户类型的区别在于:储蓄账户不允许透支,而信用账户可以透 ...

随机推荐

  1. laravel 路由设置

    目录  routes\web.php 初始路由,直接渲染视图welcome,即V层   '/'为路径:www.xxx.com/ Route::get('/', function () { return ...

  2. 解决element 照片墙上传时回显问题

    1.先看看样式: <el-upload class="imgList" action="1165165" list-type="picture- ...

  3. SpringBoot2.0 基础案例(02):配置Log4j2,实现不同环境日志打印

    一.Log4j2日志简介 日志打印是了解Web项目运行的最直接方式,所以在项目开发中是需要首先搭建好的环境. 1.Log4j2特点 1)核心特点 相比与其他的日志系统,log4j2丢数据这种情况少:d ...

  4. TCP协议怎么关闭?

    TCP协议是一个面向连接的传输层协议,那如果避免遭到破坏,该怎样正确关闭呢?一般正常关闭TCP连接是采用四次挥手机制,其实主体就两个,客户端和服务器交互传递,且连续四次,传递的东西是FIN数据包和AC ...

  5. nginx 一些配置

    worker_processes 4; #工作进程数 events { #epoll是多路复用IO(I/O Multiplexing)中的一种方式, #仅用于linux2.6以上内核,可以大大提高ng ...

  6. JSP && Servlet | 上传图片到数据库

    参考博客: https://blog.csdn.net/qiyuexuelang/article/details/8861300 Servlet+Jsp实现图片或文件的上传功能 https://blo ...

  7. JQuery数组遍历 - $.each(),$().each()和forEach()

  8. JMeter提取和重用作为变量 - 具有更多提取器

    这是我们最受欢迎的博文,我们添加了更多提取器.这篇文章解释了如何使用正则表达式提取器从第一个请求的响应中提取密钥,并将提取的密钥用于后续请求.我们称之为JMeter Extract并重复使用. 现在您 ...

  9. php—常见设计模式

    工厂模式 /** * 工厂方法或者类生成对象,而不是在代码中直接new * * 修改类名的时候,不需要每一个实例化语句都修改 * 只需要修改对应的工厂方法 * * Class Factory * @p ...

  10. Java EE学习笔记(二)

    Spring中的Bean 1.Bean的配置: a).Bean的本质就是Java中的类,而Spring中的Bean其实就是对实体类的引用,来生产Java类对象,从而实现生产和管理Bean . b).S ...