【java学习之路】(java SE篇)(练习)一些关于面向对象的题目与思考
题目一
//写出结果
public class Test {int i = 0;void change(int i){i++;System.out.println(i);}void change1(Test t){t.i++; System.out.println(t.i);}public static void main(String[] args) {Test ta = new Test(); System.out.println(ta.i);ta.change(0);System.out.println(ta.i); ta.change1(ta); System.out.println(ta.i);}}
回答:
public static void main(String[] args) {Test ta = new Test();System.out.println(ta.i);//0ta.change(0);//1System.out.println(ta.i);//0ta.change1(ta);//1System.out.println(ta.i);//1}
验证:
知识点总结详见:
1.引用传递与值传递引用传递:传递的不是对象的本身,而是引用对象的地址值传递:方法执行中形式参数的改变不影响实际参数的值*2.java方法调用3.类的基本结构
题目二
public class Dog {String name=null;int age = 10;public Dog() {this.name = "旺财";this.age = 20;}public void show(){System.out.println("名字:"+name+" 年龄:"+age);}public static void main(String[] args) {new Dog().show();}
}
回答
public static void main(String[] args) {new Dog().show();//旺财+20}
验证
** 知识点总结 **
1.成员变量2.构造方法
题目三
比较大小:分别利用重载,对两个int,两个double,三个int,三个double类型的数进行比较大小,返回其中较大的一个.
代码实现
public class Test{public void CompareNum(int a,int b){if(a>b){System.out.println(a);}else {System.out.println(b);}}public void CompareNum(double a,double b){if(a>b){System.out.println(a);}else {System.out.println(b);}}public void CompareNum(int a,int b,int c){if(a>b&&a>c){System.out.println(a);}else if(b>a&&b>c){System.out.println(b);}else {System.out.println(c);}}public void CompareNum(double a,double b,double c){if(a>b&&a>c){System.out.println(a);}else if(b>a&&b>c){System.out.println(b);}else {System.out.println(c);}}public static void main(String[] args) {Test test = new Test();test.CompareNum(5, 9);test.CompareNum(5.2, 9.1);test.CompareNum(5, 9, 16);test.CompareNum(5.2, 9.1, 16.8);}
}
运行结果
题目四
编程
定义一个中国邮政储蓄银行类,
属性:账号、密码、存款余额,银行名称。
方法:注册账号、存款、取款、查询。
创建该类对象并测试注册账号,存钱,取钱查询操作
要求:使用面向对象思想设计程序
代码
Bank类
package CarUp.Demo3;import java.util.Scanner;//编程
// 定义一个中国邮政储蓄银行类,
// 属性:账号、密码、存款余额,银行名称。
// 方法:注册账号、存款、取款、查询。
// 创建该类对象并测试注册账号,存钱,取钱查询操作
// 要求:使用面向对象思想设计程序
public class Bank {String id;String password;int money;static String bankName = "中国国家银行";public void ApplyId(){Scanner sc = new Scanner(System.in);System.out.println("请输入要申请的ID");this.id = sc.nextLine();System.out.println("ID申请成功");System.out.println("请输入要申请的密码");this.password = sc.nextLine();System.out.println("密码申请成功");}public void InMoney(){System.out.println("请输入存款金额");Scanner sc = new Scanner(System.in);money = sc.nextInt();this.money += money;System.out.println("存款成功");System.out.println("欢迎下次光临"+bankName);}public void OutMoney(){System.out.println("请输入取款金额");Scanner sc = new Scanner(System.in);money = sc.nextInt();this.money -= money;System.out.println("取款成功");System.out.println("欢迎下次光临"+bankName);}public void SearchMoney(){System.out.println(this.money);}public void PrintId(){System.out.println("您的账号是:"+this.id+"您的密码是:"+this.password);}
}
测试类
package CarUp.Demo3;public class MoneyTest {public static void main(String[] args) {Bank bank = new Bank();bank.ApplyId();bank.PrintId();bank.InMoney();bank.OutMoney();bank.SearchMoney();}
}
运行截图
【java学习之路】(java SE篇)(练习)一些关于面向对象的题目与思考相关推荐
- 个人开发经历--我的java学习之路(学校篇)
个人开发经历--我的java学习之路(学校篇) 个人介绍: 姓名: 不在这里说明 联系信息: 个人历程 jdbc阶段 sql生成器 一代代码生成器 servlet阶段 servlet项目中,sql生成 ...
- java学习之路---java学习的方法和java学习路线
转载于: http://blog.csdn.net/zhangerqing 前段时间逛论坛,总会有很多新手很迷茫,问到:到底该怎么学好Java,这个问题很重要,尤其对于像我们这样大多数都是靠自学的人来 ...
- Java学习之路-----Java基础简介,基础语法,Java标识符,修饰符,关键字与注释
这里写目录标题 Java简介 Java发展历程 Java语言平台版本 Java语言的特点 Java语言跨平台原理--JVM JRE和JDK JDK安装路径下的目录解释 Java基础语法 Java标识符 ...
- Java学习之路 -- Java怎么学?
文章目录 java基础怎么学? 学完基础学什么? 几个常用框架学完学什么? MQ JVM的知识跑不掉 微服务等等 其他 数据结构和算法 java基础怎么学? 当时,作为懵懂的小白,大一学习了c和c++ ...
- JAVA学习之路--基础篇三
目录 关于Java中从键盘输入的语句 nextxxx().next().nextLine()的区别 语句 if和if else语句 Switch语句 for语句 while和do..while bre ...
- java学习之路目录(已完结)
java学习之路目录(持续更新中-) 第一阶段 javaSE(完结) 序号 标题 内容 001 java初识 java语言特点.体系结构.运行机制 002 java SE基础语法 注释.关键字.变量. ...
- 我的Java学习之路2009-11-17
-------------------------------2009年3月19日开始----------------------------- 下载JDK Myeclipse Netbeans JB ...
- 菜鸟haqima的Java学习之路第一天
菜鸟haqima的Java学习之路第一天 导读:DOS命令 常用快捷键 Java的简单概述 (第一章 Java开发环境的搭建) 1.常用的DOS命令 1.1.怎么打开DOS命令窗口 win键+r(组合 ...
- Java学习之路02_选择方向_旺旺老师
提示:请您先阅读第一部分:Java学习之路01_软件江湖_旺旺老师 第二部分:帮派之争 就好像玩游戏要先选择角色种族,进入江湖要先选择帮派,那搞软件开发也要选择方向.个人总结的软件开发的方向:嵌入式开 ...
- Java学习之路-预科
Java学习之路-预科 第一章 学习计算机的基本知识 文章目录 Java学习之路-预科 前言 一.什么是计算机? 二.硬件及冯诺依曼结构 1.计算机硬件 1.1 计算机硬件组成 1.2 什么是装机 1 ...
最新文章
- 在windows中创建一个影子用户
- struts2学习 - action -3 动态方法调用 DMI
- html action get post请求参数乱码,input type=text 发送请求参数,中文乱码问题
- 《I'm a Mac:雄狮训练手册》——1.12 开机快捷键
- SAP query生成的程序名
- 一个前端在校生的2018年终总结
- 【送书活动】机器学习项目开发实战
- windows服务编程 注册InstallUtil.exe
- Since WWDC released the first developer
- 数值计算原理_JavaScript策略设计时数值计算精度问题解决方案
- [2019杭电多校第十场][hdu6701]Make Rounddog Happy
- 译林 五年级上 单词_译林版小学英语五上Unit 4 HobbiesStory time公开课优质课件教案视频教案...
- 测试UDP端口是否通
- 了解CV和RoboMaster视觉组(五)滤波器、观测器和预测方法:维纳滤波器Wiener Filter,LMS
- Python学习资源大集合
- 英文书籍下载常用网站
- segmentation fault
- postgresql C++接口libpq
- C++中atan()与atan2()的区别和用法
- 计算机专业的优秀学长寄语大一新生,学长学姐对大一新生的寄语 大学学长学姐寄语励志...
热门文章
- 数据表的类型(INNODB与MYISAM 的区别)
- Open3d之非阻塞可视化
- 我们自己搞了个数据库设计工具(客户端)
- 微信聊天记录删除怎么恢复?iOS安卓数据迁移
- 顺势而为,戴尔加速流动文件系统进化
- 手动构建redis集群
- Linux 下使用 screen 与 conda / anaconda 环境的一点坑 | screen 中 conda 环境失效/缺 module
- oracle x kglob,x$kglob x$kgllk x$kglpn
- mysql开发平台_搭建mysql编程平台
- verilog实现多周期处理器之——(二)第一条指令ori的实现