java编程思想第四版第三章要点习题
- 使用"简短的" 和正常的 打印语句来编写一个程序
package net.mindview.util; public class Print {
/**
* 不带有回车
* @param s
*/
public static void print(Object s){
System.out.print(s);
} /**
* 带有回车
* @param s
*/
public static void println(Object s){
System.out.println(s);
}
}package net.mindview.operators; import java.util.Date;
import static net.mindview.util.Print.*;
public class HelloData { public static void main(String[] args) {
print("hello, it is");
print(new Date());
System.out.println("正常的方式打印");
}
} - 创建一个包含了float域的类, 并用这个类来展示别名机制. (这里懒得写了, 就是把demo中的int换成float就可以了)
package net.mindview.operators; class Tank{
int level;
} public class Assignment {
public static void main(String[] args) {
Tank t1 = new Tank();
Tank t2 = new Tank();
t1.level = ;
t2.level = ;
System.out.println("t1.level:" + t1.level + ", t2.level:" + t2.level);
t2 = t1;
System.out.println("t1.level:" + t1.level + ", t2.level:" + t2.level);
t1.level = ;
System.out.println("t1.level:" + t1.level + ", t2.level:" + t2.level);
} } - 创建一个包含一个float域的类, 并用这个类来展示方法调用时的别名机制(将char改为float即可)
package net.mindview.operators; class Letter{
char c;
} public class PassObject {
static void f(Letter y){
y.c = 'z';
}
public static void main(String[] args) {
Letter x = new Letter();
x.c = 'a';
System.out.println("1: x.c="+x.c);
//传递的时x所指向的引用
f(x);
System.out.println("1: x.c="+x.c);
}
} - 编写一个计算速度的程序, 压缩使用的距离和时间都是常量.(略)
- 创建一个名为Dog的类, 他包含两个String与:name和says。 在main()方法中,创建两个Dog对象, 一个名为spot(它的叫声为ruff!),另一个名为scruffy(它的叫声为Wurf!).然后显示他们的名字和叫声。
package net.mindview.operators; class Dog{
public String name;
public String says; @Override
public String toString() {
return "名字:"+this.name + ",语言:"+this.says;
}
}
public class DogTest { public static void main(String[] args) {
// TODO Auto-generated method stub
Dog d1 = new Dog();
Dog d2 = new Dog();
d1.name = "spot";
d1.says = "Ruff!";
d2.name = "scruffy";
d2.says = "Wurf!"; System.out.println(d1);
System.out.println(d2);
}
} - 在练习5的基础上,创建一个新的Dog对象, 并对其赋值为spot对象。测试==和equals()方法来比较所有引用的结果。
package net.mindview.operators; class Dog{
public String name;
public String says; @Override
public String toString() {
return "名字:"+this.name + ",语言:"+this.says;
}
}
public class DogTest { public static void main(String[] args) {
// TODO Auto-generated method stub
Dog d1 = new Dog();
Dog d2 = new Dog();
d1.name = "spot";
d1.says = "Ruff!";
d2.name = "scruffy";
d2.says = "Wurf!"; System.out.println(d1);
System.out.println(d2); Dog d3 = new Dog();
d3.name = "spot";
System.out.println(d1.name == d3.name);
System.out.println(d1.name.equals(d3.name));
}
}输出结果:
名字:spot,语言:Ruff!
名字:scruffy,语言:Wurf!
true
true这个结果需要特别说明一下, String是特殊的引用类型, 当他被直接赋值时,就是把这个值对应的引用位置赋值给String变量了, 所以, 两次结果都是true。 如果你用new String()赋值, 结果就不同了.
- 编写一个程序, 模拟扔硬币的结果
package net.mindview.operators; import java.util.Random;
import static net.mindview.util.Print.*;
public class ThrowCron { public static void main(String[] args) {
Random num = new Random();
int a = num.nextInt();
switch (a % ){
case :
println("正面"); break;
case :
println("反面");break;
}
} } - fadsfas
- fasfda
- fasdf
- fasdfa
- fasdf
- fasd
- fdasf
- fadsf
java编程思想第四版第三章要点习题的更多相关文章
- java编程思想第四版第三章要点总结
1. 静态导入 使用import static方式导入一个类的所有方法. 例如: import static net.mindview.util.Print.*; 首先定义了一个Print类,里面有静 ...
- java编程思想第四版第十三章字符串 习题
fas 第二题 package net.mindview.strings; import java.util.ArrayList; import java.util.List; /** * 无限循环 ...
- java编程思想第四版第十一章习题
第一题 package net.mindview.holding.test1; import java.util.ArrayList; import java.util.List; /** * 沙鼠 ...
- Java编程思想第四版*第七章*个人练习
欢迎加群:239063848 成团的笔记:该组仅用于技术共享和交流,问题和答案公布 潘基聊天.禁止广告.禁止招聘-- 练习1:(2)创建一个简单的类.第二个类中,将一个引用定义为第一个类的对象.运用惰 ...
- java编程思想第四版第六章习题
(略) (略) 创建两个包:debug和debugoff,他们都包含一个相同的类,该类有一个debug()方法,第一个版本显示发送给控制台的String参数,而第二版本什么也不做,使用静态import ...
- java编程思想第四版第十三章字符串 总结
1. String和StringBulider的使用 通过书中介绍, 我们得知如下结论: 当使用+连接符将字符串进行拼接的时候, 编译器会进行自动优化为使用StringBuilder连接字符串. 当在 ...
- java编程思想第四版第七章总结
1. 实现类的复用通常有两种方式 组合:在新的类中产生现有类的对象 继承:按照现有类的类型来创造新类 2. 一个特殊的方法toString() 在非基本类型的对象中, 都有toString()方法 当 ...
- java编程思想第四版第六章总结
1. 代码重构 为什么f要代码重构 第一次代码不一定是完美的, 总会发现更优雅的写法. 代码重构需要考虑的问题 类库的修改不会破坏客户端程序员的代码. 源程序方便扩展和优化 2. 包 创建一个独一无二 ...
- java编程思想第四版第五章习题
创建一个类, 它包含一个未初始化的String引用.验证该引用被Java初始化成了null package net.mindview.initialization; public class Test ...
随机推荐
- [BZOJ29957] 楼房重建 - 线段树
2957: 楼房重建 Time Limit: 10 Sec Memory Limit: 256 MBSubmit: 3294 Solved: 1554[Submit][Status][Discus ...
- Vue 上传材料并传给后端接口(使用input)
最近工作中接到一个需求,需要上传一个文件材料,提交时传给后端.使用的框架是Vue,废话不说直接上代码 <template> <div> <input type=" ...
- 2.2 C语言_实现数据容器vector(排序功能)
上一节我们说到我们己经实现了一般Vector可以做到的自动扩充,告诉随机存取,那么现在我们需要完成vector的一个排序的功能. 排序算法我们网上一百度哇~~!很常见的就有8大排序算法: 1.选择排序 ...
- 【教程】基于Ubuntu系统的PyTorch虚拟环境配置
目录 一.PyTorch虚拟环境配置 二.PyTorch虚拟环境使用 三.常用命令 Editor: Veagau Time: 2019/10/17 一.PyTorch虚拟环境配置 该部分操作均在终端( ...
- 百万年薪python之路 -- 面向对象之继承
面向对象之继承 1.什么是面向对象的继承 继承(英语:inheritance)是面向对象软件技术当中的一个概念. 通俗易懂的理解是:子承父业,合法继承家产 专业的理解是:子类可以完全使用父类的方法和属 ...
- 五分钟后,你将学会在SpringBoot项目中如何集成CAT调用链
买买买结算系统 一年一度的双十一购物狂欢节就要到了,又到剁手党们开始表演的时刻了.当我们把种草很久的商品放入购物车以后,点击"结算"按钮时,就来到了买买买必不可少的结算页面了.让我 ...
- 实验:用tcp请求http协议的接口
图示: 开启http服务,浏览器地址,访问测试页面 查看http报文,复制出来 用tcp工具请求测试 http 协议就是这样的,在tcp协议上面做了报文格式处理,连接发送数据后,就自动断开连接 jav ...
- Andriod项目结构
在Android Studio第一次创建一个项目,点击左侧的Project选项卡,在Project窗口下有几个不同的视图,默认的是名为Android的视图: 对于大部分的开发工作,我们只要在Andro ...
- Xbim.GLTF源码解析(二):IFC和GLTF的对应关系
原创作者:flowell,转载请标明出处:https://www.cnblogs.com/flowell/p/10839179.html IFC IFC是建筑信息模型(BIM)数据开放的国际标准,在建 ...
- Xbim.GLTF源码解析(三):Builder类
原创作者:flowell,转载请标明出处:https://www.cnblogs.com/flowell/p/10838706.html IFC提取转换成GLTF的逻辑在Builder类中, Buil ...