Java第四周编程总结
第四周编程总结
1.写一个名为Rectangle的类表示矩形。其属性包括宽width、高height和颜色color,width和height都是double型的,而color则是String类型的。要求该类具有:
(1) 使用构造函数完成各属性的初始赋值
(2) 使用get…()和set…()的形式完成属性的访问及修改
(3) 提供计算面积的getArea()方法和计算周长的getLength()方法
一,实验代码
package TXT;
public class Rectangle {
private double height;
private double width;
private String color;
public Rectangle(double width,double height,String color){
this.setColor(color);
this.setHeight(height);
this.setWidth(width);
}
public double getHeight() {
return height;
}
public void setHeight(double height) {
this.height = height;
}
public double getWidth() {
return width;
}
public void setWidth(double width) {
this.width = width;
}
public String getColor() {
return color;
}
public void setColor(String color) {
this.color = color;
}
public void getArea(){
double area=0;
area=this.height*this.width;
System.out.println("矩形的面积:"+area);
}
public void getLength(){
double length;
length=width+height+width+height;
System.out.println("矩形的周长:"+length);
}
public String toString(){
String recStr="矩形的高度:"+this.getHeight()+"宽度:"+this.getWidth()+"颜色:"+this.getColor();
return recStr;
}
public static void main(String[] args) {
Rectangle rec=new Rectangle(5,10,"黑色");
rec.getArea();
rec.getLength();
System.out.println(rec.toString());
}
}
银行的账户记录Account有账户的唯一性标识(11个长度的字符和数字的组合),用户的姓名,开户日期,账户密码(六位的数字,可以用0开头),当前的余额。银行规定新开一个账户时,银行方面提供一个标识符、账户初始密码123456,客户提供姓名,开户时客户可以直接存入一笔初始账户金额,不提供时初始余额为0。定义该类,并要求该类提供如下方法:存款、取款、变更密码、可以分别查询账户的标识、姓名、开户日期、当前余额等信息。
一,实验代码:
package TXT2;
import java.text.DecimalFormat; //格式化数字
import java.util.Scanner; //调用控制台输入信息
class Account {
private String id,name;
private int time,key;
private double balance;
public Account(String id,String name,int time,int key,int balance){
this.setId(id);
this.setName(name);
this.setTime(time);
this.setKey(key);
this.setBalance(balance);
}
public /static/ void deposit(){ //此处static
System.out.println("1.存款 2.取款");
System.out.print("再次输入你要进行的操作的序号:");
DecimalFormat df=new DecimalFormat("0.00");
Scanner sc=new Scanner(System.in); //接受控制台输入,同下所有Scanner sc=new Scanner(......)
int a1=sc.nextInt();
if(a1==1){
System.out.println("当前余额:"+df.format(+getBalance())+"元");
System.out.print("请输入要存入的钱数:");
double money1=sc.nextDouble();
setBalance(getBalance()+money1);
System.out.println("成功!当前余额:"+df.format(+getBalance())+"元");
}
else if(a1==2){
System.out.println("当前余额:"+df.format(+getBalance())+"元");
System.out.print("请输入要取出的钱数:");
double money2=sc.nextDouble();
setBalance(getBalance()-money2);
if(getBalance()<0){
System.out.println("余额不足!");
}
else{
System.out.println("成功!当前余额:"+df.format(+getBalance())+"元");
}
}
}public /*static*/ void change(){
System.out.print("请设置新密码:");
Scanner sc=new Scanner(System.in);
int key1=sc.nextInt();
System.out.print("请再次确认密码:");
int key2=sc.nextInt();
if(key1==key2){
setKey(key1);
System.out.println("设置成功!你的密码为:"+getKey());
}
else{
System.out.println("两次输入的密码不同!");
}
}
public /*static*/void inquire(){
System.out.print("输入六位数密码查询信息:");
Scanner sc=new Scanner(System.in);
int data=sc.nextInt();
if(data==getKey()){
DecimalFormat df=new DecimalFormat("0.00");
System.out.println("标识:"+getId());
System.out.println("姓名:"+getName());
System.out.println("开户日期:"+getTime());
System.out.println("余额:"+df.format(+getBalance())+"元");
}
else{
System.out.println("密码错误");
}
}
public String getId(){
return id;
}
public void setId(String i){
id=i;
}
public String getName(){
return name;
}
public void setName(String n){
name=n;
}
public int getTime(){
return time;
}
public void setTime(int t){
time=t;
}
public int getKey(){
return key;
}
public void setKey(int k){
key=k;
}
public double getBalance(){
return balance;
}
public void setBalance(double b){
balance=b;
}
}
class classdemo3 {
public static void main(String[] args) {
boolean R=false;
Account ac=new Account("Hazelnut826","陈振国",20190919,101010,0);
while(!R)
{
System.out.println("1.存取款");
System.out.println("2.修改密码");
System.out.println("3.查询信息");
System.out.println("4.退出程序");
System.out.print("请输入你要进行的操作的序号:");
Scanner sc=new Scanner(System.in);
int a=sc.nextInt();
if(a==1){
ac.deposit();
}
else if(a==2){
ac.change();
}
else if(a==3){
ac.inquire();
}
else if(a==4){
System.out.println(" 感谢使用!");
break;
}
}
}
}
实验总结:
总是编译错误
Java第四周编程总结的更多相关文章
- 20145304 Java第四周学习报告
20145304<Java程序设计>第四周学习总结 教材学习内容总结 1.继承共同行为: 继承基本上就是避免多个类间重复定义共同行为,关键词为extends. 代码如下: //继承共同行为 ...
- 20165235 祁瑛 Java第四周考试总结
20165235 祁瑛 Java第四周考试总结 课后习题p29 p45 代码编写 import java.util.*; class Example2_5{ public static void ma ...
- 20155327 java第四周学习笔记
20155327 java第四周学习笔记 五六章知识整理 1子类与父类 父类是接口或者是抽象类,子类必须继承自父类. 2子类的继承性 在Java中,通过关键字extends继承一个已有的类,被继承的类 ...
- [ 高并发]Java高并发编程系列第二篇--线程同步
高并发,听起来高大上的一个词汇,在身处于互联网潮的社会大趋势下,高并发赋予了更多的传奇色彩.首先,我们可以看到很多招聘中,会提到有高并发项目者优先.高并发,意味着,你的前雇主,有很大的业务层面的需求, ...
- 1.JAVA之GUI编程概述
下列内容为本人看毕向东老师java视频教程学习笔记! JAVA GUI图形用户界面编程: Windows 操作系统提供两种操作方式: ...
- 2.JAVA之GUI编程布局
布局管理器 容器中的组件排放方式,就是布局 常见的布局管理器: **************************************************** 1.FlowLayout(流式 ...
- 3.JAVA之GUI编程Frame窗口
创建图形化界面思路: 1.创建frame窗体: 2.对窗体进行基本设置: 比如大小.位置.布局 3.定义组件: 4.将组件通过add方法添加到窗体中: 5.让窗体显示,通过setVisible(tur ...
- 4.JAVA之GUI编程事件监听机制
事件监听机制的特点: 1.事件源 2.事件 3.监听器 4.事件处理 事件源:就是awt包或者swing包中的那些图形用户界面组件.(如:按钮) 事件:每一个事件源都有自己特点有的对应事件和共性事件. ...
- 5.JAVA之GUI编程窗体事件
我们回顾下第三篇时的内容: 在3.JAVA之GUI编程Frame窗口中窗体是无法直接关闭的,想要关闭须进程管理器结束进程方式关掉. 现在我们就来解决下这个问题. ******************* ...
随机推荐
- 生成对抗网络 Generative Adversarial Networks
转自:https://zhuanlan.zhihu.com/p/26499443 生成对抗网络GAN是由蒙特利尔大学Ian Goodfellow教授和他的学生在2014年提出的机器学习架构. 要全面理 ...
- CSP2019 前 随感
因为博主并没有任何的 oi 水平.文化课水平以及作文水平,下面的东西都是对辞藻和古诗词的堆砌. 不知不觉又到了新一年的 noip 了. 好像是去年的双十一的晚上,noip 考挂的我绝望地写了 bzoj ...
- pycharm不支持svn,是需要svn命令行工具没有安装(for windows)
1. 安装svn命令行工具 Subversion for Windows下载https://sourceforge.net/projects/win32svn/?source=typ_redirect ...
- Java使用wait() notify()方法操作共享资源详解_java - JAVA
文章来源:嗨学网 敏而好学论坛www.piaodoo.com 欢迎大家相互学习 Java多个线程共享资源: 1)wait().notify()和notifyAll()方法是本地方法,并且为final方 ...
- LeetCode--079--单词搜索(python)
给定一个二维网格和一个单词,找出该单词是否存在于网格中. 单词必须按照字母顺序,通过相邻的单元格内的字母构成,其中“相邻”单元格是那些水平相邻或垂直相邻的单元格.同一个单元格内的字母不允许被重复使用. ...
- linux运维、架构之路-CentOS6.9安装Zabbix3.4.1
一.LAMP环境安装 1.环境 [root@m01 ~]# cat /etc/redhat-release CentOS release 6.9 (Final) [root@m01 ~]# uname ...
- 随机森林(Random Forest,简称RF)和Bagging算法
随机森林(Random Forest,简称RF) 随机森林就是通过集成学习的思想将多棵树集成的一种算法,它的基本单元是决策树,而它的本质属于机器学习的一大分支——集成学习(Ensemble Learn ...
- 洛谷P1199 三国游戏——题解
题目传送 显然,在这样的数据范围下搜索是没希望的了.好好分析一下,发现小涵时不可能拿到与一个武将最默契的另一个武将了.所以考虑一下默契值次大的一对武将. 显然,对每一个武将来说,小涵是可以拿到默契值次 ...
- [POJ1637]Sightseeing tour:混合图欧拉回路
分析 混合图欧拉回路问题. 一个有向图有欧拉回路当且仅当图连通并且对于每个点,入度\(=\)出度. 入度和出度相等可以联想到(我也不知道是怎么联想到的)网络流除了源汇点均满足入流\(=\)出流.于是可 ...
- No plugin found for prefix 'war' in the current project and in the plugin groups
解决办法: 在pom里面添加 : <dependency> <groupId>org.apache.maven.plugins</groupId> <arti ...