JAVA入门级教学之(简单的程序测试)
请定义一个交通工具(Vehicle)类
其中有属性:
速度speed
体积size
方法移动move()
设置速度setSpeed(int speed)
加速speedUp()
减速speedDown()
最后在测试类Vehicle中的main() 中实例化一个交通工具对象,并通过方法给它初始化speed,size的值并且打印出来,另外调用加速减速的方法对速度进行改变
搭建大体框架:
/*** @author LBJ* @version V1.0* @Package PACKAGE_NAME* @date 2021/1/28 17:38* @Copyright 公司*//*
请定义一个交通工具(Vehicle)类其中有属性:速度speed体积size方法移动move()设置速度setSpeed(int speed)加速speedUp()减速speedDown()最后在测试类Vehicle中的main() 中实例化一个交通工具对象,并通过方法给它初始化speed,size的值并且打印出来,另外调用加速减速的方法对速度进行改变*/
public class Test01{public static void main(String[] args) {//通过无参数构造方法创建对象Vehicle vehicle = new Vehicle();vehicle.setSpeed(100);vehicle.setSize(20);System.out.println("speed:"+vehicle.getSpeed());System.out.println("size:"+vehicle.getSize());//调用加速方法vehicle.speedUp();System.out.println(vehicle.getSpeed());//调用减速方法vehicle.speedDown();System.out.println(vehicle.getSpeed());//通过有参数构造方法创建对象//Vehicle vehicle1 = new Vehicle(100, 20);}
}class Vehicle {private int speed;private int size;public Vehicle(){}public Vehicle(int speed,int size){this.speed=speed;this.size=size;}public int getSpeed() {return speed;}public void setSpeed(int speed) {this.speed = speed;}public int getSize() {return size;}public void setSize(int size) {this.size = size;}//移动方法public void move(){}//加速方法public void speedUp(){}//减速方法噶public void speedDown(){}
}
结果:两个速度值并没有因为调用方法而改变
进阶调整后的代码:
/*** @author LBJ* @version V1.0* @Package PACKAGE_NAME* @date 2021/1/28 17:38* @Copyright 公司*//*
请定义一个交通工具(Vehicle)类其中有属性:速度speed体积size方法移动move()设置速度setSpeed(int speed)加速speedUp()减速speedDown()最后在测试类Vehicle中的main() 中实例化一个交通工具对象,并通过方法给它初始化speed,size的值并且打印出来,另外调用加速减速的方法对速度进行改变*/
public class Test01{public static void main(String[] args) {//通过无参数构造方法创建对象Vehicle vehicle = new Vehicle();vehicle.setSpeed(100);vehicle.setSize(20);System.out.println("speed:"+vehicle.getSpeed());System.out.println("size:"+vehicle.getSize());//调用移动方法vehicle.move();//调用加速方法vehicle.speedUp(10);System.out.println("speed:"+vehicle.getSpeed());//调用减速方法vehicle.speedDown(10);System.out.println("speed:"+vehicle.getSpeed());//通过有参数构造方法创建对象//Vehicle vehicle1 = new Vehicle(100, 20);}
}class Vehicle {private int speed;private int size;public Vehicle(){}public Vehicle(int speed,int size){this.speed=speed;this.size=size;}public int getSpeed() {return speed;}public void setSpeed(int speed) {this.speed = speed;}public int getSize() {return size;}public void setSize(int size) {this.size = size;}//移动方法public void move(){System.out.println("公交车开始启动");}//加速方法public void speedUp(int addSpeed){//this.getSpeed()是原来的基础速度,addSpeed是后来增加的速度this.setSpeed(this.getSpeed() + addSpeed);}//减速方法噶public void speedDown(int subSpeed){if(subSpeed<this.getSpeed()){this.setSpeed(this.getSpeed() - subSpeed);}else {System.out.println("请输入比当前速度小的值");}}
}
运行结果:
编写简单的计算器
定义名为Number 的类,其中有两个整型数据成员n1和n2应声明为私有
编写构造方法赋予 n1 和 n2 的初始值
再为该类定义 加、减、乘、除等公有实例方法
分别对两个成员变量执行加减乘除的运算
大体结构:
/*** @author LBJ* @version V1.0* @Package PACKAGE_NAME* @date 2021/1/28 17:38* @Copyright 公司*//*
编写简单的计算器定义名为Number 的类,其中有两个整型数据成员n1和n2应声明为私有编写构造方法赋予 n1 和 n2 的初始值再为该类定义 加、减、乘、除等公有实例方法分别对两个成员变量执行加减乘除的运算*/
public class Test01{public static void main(String[] args) {Number number = new Number(1,2);number.addition();number.subtration();number.multiplication();number.division();}
}class Number{private int n1;private int n2;public Number(){}public Number(int n1,int n2){this.n1=n1;this.n2=n2;}public int getN1() {return n1;}public void setN1(int n1) {this.n1 = n1;}public int getN2() {return n2;}public void setN2(int n2) {this.n2 = n2;}public void addition(){System.out.println(this.getN1()+"+"+this.getN2()+"="+(this.getN1()+this.getN2()));}public void subtration(){System.out.println(this.getN1()+"-"+this.getN2()+"="+(this.getN1()-this.getN2()));}public void multiplication(){System.out.println(this.getN1()+"*"+this.getN2()+"="+(this.getN1()*this.getN2()));}public void division(){System.out.println(this.getN1()+"/"+this.getN2()+"="+(this.getN1()/this.getN2()));}
}
测试结果:之所以1/2=0是因为int类型的取整
添加安全控制:
/*** @author LBJ* @version V1.0* @Package PACKAGE_NAME* @date 2021/1/28 17:38* @Copyright 公司*//*
编写简单的计算器定义名为Number 的类,其中有两个整型数据成员n1和n2应声明为私有编写构造方法赋予 n1 和 n2 的初始值再为该类定义 加、减、乘、除等公有实例方法分别对两个成员变量执行加减乘除的运算*/
public class Test01{public static void main(String[] args) {Number number = new Number(1,0);number.addition();number.subtration();number.multiplication();number.division();}
}class Number{private int n1;private int n2;public Number(){}public Number(int n1,int n2){this.n1=n1;this.n2=n2;}public int getN1() {return n1;}public void setN1(int n1) {this.n1 = n1;}public int getN2() {return n2;}public void setN2(int n2) {this.n2 = n2;}public void addition(){System.out.println(this.getN1()+"+"+this.getN2()+"="+(this.getN1()+this.getN2()));}public void subtration(){System.out.println(this.getN1()+"-"+this.getN2()+"="+(this.getN1()-this.getN2()));}public void multiplication(){System.out.println(this.getN1()+"*"+this.getN2()+"="+(this.getN1()*this.getN2()));}public void division(){if(this.getN2()==0){System.out.println("除数不能为0");return;}System.out.println(this.getN1()+"/"+this.getN2()+"="+(this.getN1()/this.getN2()));}
}
测试结果:
JAVA入门级教学之(简单的程序测试)相关推荐
- JAVA入门级教学之(猜数字测试)
一个类A有一个实例变量v,从键盘接受一个正整数作为实例变量v的初始值 另外再定义一个类B,对类A的实例变量v进行猜测 如果大了则提示大了 如果小了则提示小了 等于则提示测试成功 猜测数字比大小的测试: ...
- JAVA入门级教学之(多态)
JAVA入门级教学之(多态) 怎么理解多态:你本身就该喊你爹叫爹,你让你爹叫你爹就是强制认做爹 多态的使用: A a = new D(); D类继承A类,父类型引用指向子类型对象 * 关于java语 ...
- JAVA入门级教学之(面向过程和面向对象的区别)
目录 JAVA入门级教学之(面向过程和面向对象的区别) 面向过程和面向对象的区别: -面向过程: -面向对象: -发展历程: -生命周期中包括: -什么是类: -什么是对象: -软件开发的过程: -重 ...
- JAVA入门级教学之(接口)
目录 JAVA入门级教学之(接口) 接口也是一种引用类型,可以等同看做类 1.如何定义接口,语法: 2.接口中只能出现: 3.接口其实是一个特殊的抽象类,特殊在接口是完全抽象的 4.接口中没有构造方法 ...
- JAVA入门级教学之(abstract抽象类)
目录 JAVA入门级教学之(abstract抽象类) 1.如何定义抽象类? 2.抽象类无法被实例化 3.虽然抽象类没有办法实例化,但是抽象类也有构造方法,该构造方法是给子类创建对象用的 4.抽象类中可 ...
- JAVA入门级教学之(super关键字)
目录 JAVA入门级教学之(super关键字) 1.super关键字用在构造方法中: 2.语法规则: 3.注意:super();的调用只能放在构造方法的第一行,和this();的调用规则一样 4.通过 ...
- JAVA入门级教学之(package和import)
目录 JAVA入门级教学之(package和import) 1.包又称为package 2.怎么定义package? 3.包名的命名规范: 4.包名要求全部小写,包名也是标识符,必须遵守标识符的命名规 ...
- JAVA入门级教学之(参数传递)
JAVA入门级教学之(参数传递) 问题引入: 参数分为形式参数还有实际参数,我们传入是的数据到底是什么呢? 方法调用的时候,涉及参数传递的问题, 传递的时候,java只遵循一种语法机制 就是将变量中保 ...
- JAVA入门级教学之(方法递归)
目录 JAVA入门级教学之(方法递归) 1.关于方法的递归调用: 2.递归是很耗费栈内存的,递归算法可以不用的时候尽量别用 3.以下程序运行的时候发生了这样的一个错误[不是异常,是错误] 4.递归必须 ...
- JAVA入门级教学之(方法内存分配机制)
目录 JAVA入门级教学之(方法内存分配机制) 1.方法只定义,不调用,是不会执行的 2.在JVM内存划分上有这样三块主要的内存空间:[还有其它的内存空间] 3.关于"栈"数据结构 ...
最新文章
- 警惕!银行风控模型或将“摇身一变”,成为风险缔造者
- python笔记总结_python学习笔记总结(1)
- java多台_Java 多态
- C++工作笔记-hiredis中关于ERR wrong number of arguments for HMSET问题的解决
- Kubernetes 核心概念 1
- Hbase单机安装及使用hbase shell进行简单操作
- Windows11如何使用安卓子系统的Amazon Appstore
- Rayman的绝顶之路——Leetcode每日一题打卡7
- 浏览器播放RTSP、RTMP等几种编码格式视频流
- LATEX编译出现Undefined control sequence.
- 微信授权登录增加浏览器历史记录解决方法
- 关于如何将网页做的完整且美观的解决办法
- 引力波数据居然是用 Python 分析的
- iOS最新吊炸天的资源
- LeetCode日常刷题1、657、717、67
- 按键精灵批量递增保存图片脚本
- 服务器光驱坏了怎么虚拟化,光驱坏了或者没有光驱怎么装系统?
- 编程php计算行李托运费_飞机行李箱怎么算托运费?
- ppt怎么压缩文件大小?学会这几种方法
- 东北大学计算机应用,东北大学计算机应用技术考研