java第九次作业:第九章例题3个
作业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个的更多相关文章
- JAVA第九次作业
JAVA第九次作业 (一)学习总结 1.用思维导图对javaIO操作的学习内容进行总结. 参考资料: XMind. 2.下面的程序实现了文件的拷贝,但采用的是一个字节一个字节的读写方式,效率很低.使用 ...
- Week09《java程序设计》第九次作业总结
Week09<java程序设计>第九次作业总结 1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结集合与泛型相关内容. 答: 2. 书面作业 本次作业题集集合 1. Li ...
- 2017-2018-2 1723《程序设计与数据结构》第九周作业 & 第二周结对编程 总结
作业地址 第九次作业:https://edu.cnblogs.com/campus/besti/CS-IMIS-1723/homework/1878 (作业界面已评分,可随时查看,如果对自己的评分有意 ...
- 2017-2018-1 20179205《Linux内核原理与设计》第九周作业
<Linux内核原理与设计>第九周作业 视频学习及代码分析 一.进程调度时机与进程的切换 不同类型的进程有不同的调度需求,第一种分类:I/O-bound 会频繁的进程I/O,通常会花费很多 ...
- 【西北师大-2108Java】第九次作业成绩汇总
[西北师大-2108Java]第九次作业成绩汇总 作业题目 面向对象程序设计(JAVA) 第11周学习指导及要求 实验目的与要求 (1)理解泛型概念: (2)掌握泛型类的定义与使用: (3)掌握泛型方 ...
- JAVA实验报告及第九周总结
Java第九周作业 实验报告七 实验任务详情: 完成火车站售票程序的模拟. 要求: (1)总票数1000张: (2)10个窗口同时开始卖票: (3)卖票过程延时1秒钟: (4)不能出现一票多卖或卖出负 ...
- 2018-2019-1 20189221 《Linux内核原理与分析》第九周作业
2018-2019-1 20189221 <Linux内核原理与分析>第九周作业 实验八 理理解进程调度时机跟踪分析进程调度与进程切换的过程 进程调度 进度调度时机: 1.中断处理过程(包 ...
- C#基础第九天-作业答案-储蓄账户(SavingAccount)和信用账户(CreditAccount)
class Bank { //Dictionary<long,Account> dictionary=new Dictionary<long,Account>(); DataT ...
- C#基础第九天-作业-储蓄账户(SavingAccount)和信用账户(CreditAccount)
要求1:完成以下两种账户类型的编码.银行的客户分为两大类:储蓄账户(SavingAccount)和信用账户(CreditAccount),两种的账户类型的区别在于:储蓄账户不允许透支,而信用账户可以透 ...
随机推荐
- hdoj5493【树状数组+二分】
题意: 给你n个人的高度, 再给出一个值代表该高度下有前面比他高的 或 后面比他高的人数, 求满足条件下的最小字典序, 不行的话输出"impossible" 思路: 对于最小字典序 ...
- [Xcode 实际操作]九、实用进阶-(7)使用Xcode的版本管理功能(SCM)
目录:[Swift]Xcode实际操作 本文将演示系统的版本控制功能. 软件配置管理(SCM):Software configuration management 是指通过执行版本控制.变更控制的规程 ...
- bzoj4472:[Jsoi2015]salesman
传送门 树形dp 对于每个点维护其子节点的走法是否唯一,每次取最大的并且不为负的(停留次数-1)个子儿子权值,然后判断走法是否唯一 假如有子节点的权值为0,走法也不唯一 代码: #include< ...
- A - Bi-shoe and Phi-shoe
每一个数字的欧拉函数要大于或等于该数字.求,最小的欧拉函数的下标和的大小. 答案要用longlong存 #include <iostream> #include <algorithm ...
- Codeforces Round #533(Div. 2) B.Zuhair and Strings
链接:https://codeforces.com/contest/1105/problem/B 题意: 给一个字符串和k,连续k个相同的字符,可使等级x加1, 例:8 2 aaacaabb 则有aa ...
- 转 open_cursors参数设置调优
https://www.cnblogs.com/Peyton-for-2012/archive/2013/05/07/3065058.html
- 541 Reverse String II 反转字符串 II
给定一个字符串和一个整数 k,你需要对从字符串开头算起的每个 2k 个字符的前k个字符进行反转.如果剩余少于 k 个字符,则将剩余的所有全部反转.如果有小于 2k 但大于或等于 k 个字符,则反转前 ...
- java的8大排序详解
本文转自 黑色幽默Lion的博客 http://www.cnblogs.com/pepcod/archive/2012/08/01/2618300.html 最近开始学习java,排序的部分之前学C的 ...
- SQL注入原理与解决方法代码示例
一.什么是sql注入? 1.什么是sql注入呢? 所谓SQL注入,就是通过把SQL命令插入到Web表单递交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令,比如先前的很多影视网 ...
- 在Window上用cmd创建.htaccess文件
Windows 图形下不能直接建立空名字的文件,所以没法直接创建.htaccess文件,不过可以通过命令行创建: cd /path/to/your/dir/ type nul>.htaccess ...